From 10f63ad60bf0363ee7cf15caf9c1959fc48d3f1f Mon Sep 17 00:00:00 2001 From: akwizgran <michael@briarproject.org> Date: Thu, 22 Feb 2018 12:46:33 +0000 Subject: [PATCH] Include requested messages when getting next send time. --- .../main/java/org/briarproject/bramble/db/JdbcDatabase.java | 3 +-- .../java/org/briarproject/bramble/db/JdbcDatabaseTest.java | 4 ++++ 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/bramble-core/src/main/java/org/briarproject/bramble/db/JdbcDatabase.java b/bramble-core/src/main/java/org/briarproject/bramble/db/JdbcDatabase.java index 809e8f9b2d..f1f795a8c1 100644 --- a/bramble-core/src/main/java/org/briarproject/bramble/db/JdbcDatabase.java +++ b/bramble-core/src/main/java/org/briarproject/bramble/db/JdbcDatabase.java @@ -1938,8 +1938,7 @@ abstract class JdbcDatabase implements Database<Connection> { String sql = "SELECT expiry FROM statuses" + " WHERE contactId = ? AND state = ?" + " AND groupShared = TRUE AND messageShared = TRUE" - + " AND deleted = FALSE" - + " AND seen = FALSE AND requested = FALSE" + + " AND deleted = FALSE AND seen = FALSE" + " ORDER BY expiry LIMIT 1"; ps = txn.prepareStatement(sql); ps.setInt(1, c.getInt()); diff --git a/bramble-core/src/test/java/org/briarproject/bramble/db/JdbcDatabaseTest.java b/bramble-core/src/test/java/org/briarproject/bramble/db/JdbcDatabaseTest.java index a0f040c206..32d4e5faa4 100644 --- a/bramble-core/src/test/java/org/briarproject/bramble/db/JdbcDatabaseTest.java +++ b/bramble-core/src/test/java/org/briarproject/bramble/db/JdbcDatabaseTest.java @@ -1653,6 +1653,10 @@ public abstract class JdbcDatabaseTest extends BrambleTestCase { db.setMessageShared(txn, messageId); assertEquals(0, db.getNextSendTime(txn, contactId)); + // Mark the message as requested - it should still be sendable + db.raiseRequestedFlag(txn, contactId, messageId); + assertEquals(0, db.getNextSendTime(txn, contactId)); + // Update the message's expiry time as though we sent it - now the // message should be sendable after one round-trip db.updateExpiryTime(txn, contactId, messageId, 1000); -- GitLab