summaryrefslogtreecommitdiffstats
path: root/common
diff options
context:
space:
mode:
Diffstat (limited to 'common')
-rw-r--r--common/genericresource.cpp4
-rw-r--r--common/resourceaccess.cpp18
2 files changed, 14 insertions, 8 deletions
diff --git a/common/genericresource.cpp b/common/genericresource.cpp
index ffb323d..6087896 100644
--- a/common/genericresource.cpp
+++ b/common/genericresource.cpp
@@ -20,6 +20,8 @@
20#include <QTime> 20#include <QTime>
21 21
22static int sBatchSize = 100; 22static int sBatchSize = 100;
23//This interval directly affects the roundtrip time of single commands
24static int sCommitInterval = 10;
23 25
24using namespace Sink; 26using namespace Sink;
25 27
@@ -354,7 +356,7 @@ GenericResource::GenericResource(const QByteArray &resourceInstanceIdentifier, c
354 mClientLowerBoundRevision = mPipeline->cleanedUpRevision(); 356 mClientLowerBoundRevision = mPipeline->cleanedUpRevision();
355 mProcessor->setOldestUsedRevision(mSourceChangeReplay->getLastReplayedRevision()); 357 mProcessor->setOldestUsedRevision(mSourceChangeReplay->getLastReplayedRevision());
356 358
357 mCommitQueueTimer.setInterval(100); 359 mCommitQueueTimer.setInterval(sCommitInterval);
358 mCommitQueueTimer.setSingleShot(true); 360 mCommitQueueTimer.setSingleShot(true);
359 QObject::connect(&mCommitQueueTimer, &QTimer::timeout, &mUserQueue, &MessageQueue::commit); 361 QObject::connect(&mCommitQueueTimer, &QTimer::timeout, &mUserQueue, &MessageQueue::commit);
360} 362}
diff --git a/common/resourceaccess.cpp b/common/resourceaccess.cpp
index daa2e82..80d60e8 100644
--- a/common/resourceaccess.cpp
+++ b/common/resourceaccess.cpp
@@ -41,6 +41,7 @@
41#include <QProcess> 41#include <QProcess>
42#include <QDataStream> 42#include <QDataStream>
43#include <QBuffer> 43#include <QBuffer>
44#include <QTime>
44 45
45#undef Trace 46#undef Trace
46#define TracePrivate() Trace_area("client.communication." + resourceInstanceIdentifier) 47#define TracePrivate() Trace_area("client.communication." + resourceInstanceIdentifier)
@@ -170,23 +171,26 @@ KAsync::Job<void> ResourceAccess::Private::tryToConnect()
170 }, 171 },
171 [this, counter](KAsync::Future<void> &future) { 172 [this, counter](KAsync::Future<void> &future) {
172 TracePrivate() << "Loop"; 173 TracePrivate() << "Loop";
173 KAsync::wait(50) 174 connectToServer(resourceInstanceIdentifier)
174 .then(connectToServer(resourceInstanceIdentifier))
175 .then<void, QSharedPointer<QLocalSocket> >([this, &future](const QSharedPointer<QLocalSocket> &s) { 175 .then<void, QSharedPointer<QLocalSocket> >([this, &future](const QSharedPointer<QLocalSocket> &s) {
176 Q_ASSERT(s); 176 Q_ASSERT(s);
177 socket = s; 177 socket = s;
178 future.setFinished(); 178 future.setFinished();
179 }, 179 }, [&future, counter, this](int errorCode, const QString &errorString) {
180 [&future, counter, this](int errorCode, const QString &errorString) { 180 static int waitTime = 10;
181 const int maxRetries = 10; 181 static int timeout = 500;
182 static int maxRetries = timeout / waitTime;
182 if (*counter > maxRetries) { 183 if (*counter > maxRetries) {
183 TracePrivate() << "Giving up"; 184 TracePrivate() << "Giving up";
184 future.setError(-1, "Failed to connect to socket"); 185 future.setError(-1, "Failed to connect to socket");
185 } else { 186 } else {
186 future.setFinished(); 187 KAsync::wait(waitTime).then<void>([&future]() {
188 future.setFinished();
189 }).exec();
187 } 190 }
188 *counter = *counter + 1; 191 *counter = *counter + 1;
189 }).exec(); 192 })
193 .exec();
190 }); 194 });
191} 195}
192 196