diff --git a/apps/emqx_bridge_s3/src/emqx_bridge_s3_aggreg_csv.erl b/apps/emqx_bridge_s3/src/emqx_bridge_s3_aggreg_csv.erl index 31ce1fcc7..a6e25a87c 100644 --- a/apps/emqx_bridge_s3/src/emqx_bridge_s3_aggreg_csv.erl +++ b/apps/emqx_bridge_s3/src/emqx_bridge_s3_aggreg_csv.erl @@ -58,9 +58,8 @@ close(#csv{}) -> mk_columns(Record, #csv{order = ColumnOrder}) -> Columns = lists:sort(maps:keys(Record)), - OrderedFirst = [CO || CO <- ColumnOrder, lists:member(CO, Columns)], Unoredered = Columns -- ColumnOrder, - OrderedFirst ++ Unoredered. + ColumnOrder ++ Unoredered. -spec emit_header([column()], container()) -> iodata(). emit_header([C], #csv{delimiter = Delim}) -> diff --git a/apps/emqx_bridge_s3/test/emqx_bridge_s3_aggreg_upload_SUITE.erl b/apps/emqx_bridge_s3/test/emqx_bridge_s3_aggreg_upload_SUITE.erl index 07a4c2056..85fdd844b 100644 --- a/apps/emqx_bridge_s3/test/emqx_bridge_s3_aggreg_upload_SUITE.erl +++ b/apps/emqx_bridge_s3/test/emqx_bridge_s3_aggreg_upload_SUITE.erl @@ -26,7 +26,8 @@ <<"publish_received_at">>, <<"clientid">>, <<"topic">>, - <<"payload">> + <<"payload">>, + <<"empty">> | T ]). @@ -185,9 +186,9 @@ t_aggreg_upload(Config) -> ?assertMatch( {ok, [ ?CONF_COLUMN_ORDER(_), - [TS, <<"C1">>, T1, P1 | _], - [TS, <<"C2">>, T2, P2 | _], - [TS, <<"C3">>, T3, P3 | _] + [TS, <<"C1">>, T1, P1, <<>> | _], + [TS, <<"C2">>, T2, P2, <<>> | _], + [TS, <<"C3">>, T3, P3, <<>> | _] ]}, erl_csv:decode(Content) ).