diff --git a/readers/postgres/messages.go b/readers/postgres/messages.go index 1039ecf8..dc585f53 100644 --- a/readers/postgres/messages.go +++ b/readers/postgres/messages.go @@ -41,7 +41,7 @@ func (tr postgresRepository) ReadAll(chanID string, rpm readers.PageMetadata) (r order := "time" format := defTable - if rpm.Format != "" { + if rpm.Format != "" && rpm.Format != defTable { order = "created" format = rpm.Format } diff --git a/readers/postgres/messages_test.go b/readers/postgres/messages_test.go index 228931cf..62744249 100644 --- a/readers/postgres/messages_test.go +++ b/readers/postgres/messages_test.go @@ -174,6 +174,19 @@ func TestReadSenml(t *testing.T) { Messages: fromSenml(queryMsgs), }, }, + "read message with publisher and format": { + chanID: chanID, + pageMeta: readers.PageMetadata{ + Format: "messages", + Offset: 0, + Limit: uint64(len(queryMsgs)), + Publisher: pubID2, + }, + page: readers.MessagesPage{ + Total: uint64(len(queryMsgs)), + Messages: fromSenml(queryMsgs), + }, + }, "read message with protocol": { chanID: chanID, pageMeta: readers.PageMetadata{