1616import tech .ydb .coordination .CoordinationSession ;
1717import tech .ydb .coordination .SemaphoreLease ;
1818import tech .ydb .coordination .settings .CoordinationSessionSettings ;
19+ import tech .ydb .coordination .settings .DescribeSemaphoreMode ;
1920import tech .ydb .core .Result ;
2021import tech .ydb .jdbc .YdbConnection ;
2122
@@ -64,12 +65,27 @@ public Optional<SimpleLock> lock(LockConfiguration lockConfiguration) {
6465 var statusCS = coordinationSession .connect ().join ();
6566
6667 if (!statusCS .isSuccess ()) {
67- logger .info ("Failed creating coordination session [{}]" , coordinationSession );
68+ logger .warn ("Failed creating coordination session [{}]" , coordinationSession );
6869
6970 return Optional .empty ();
7071 }
7172
72- logger .info ("Created coordination node session [{}]" , coordinationSession );
73+ logger .debug ("Created coordination node session [{}]" , coordinationSession );
74+
75+ var describeResult = coordinationSession .describeSemaphore (
76+ lockConfiguration .getName (),
77+ DescribeSemaphoreMode .WITH_OWNERS
78+ ).join ();
79+
80+ if (describeResult .isSuccess ()) {
81+ var describe = describeResult .getValue ();
82+
83+ if (!describe .getOwnersList ().isEmpty ()) {
84+ var describePayload = new String (describe .getOwnersList ().get (0 ).getData (), StandardCharsets .UTF_8 );
85+
86+ logger .info ("Received DescribeSemaphore[Name={}, Data={}]" , describe .getName (), describePayload );
87+ }
88+ }
7389
7490 Result <SemaphoreLease > semaphoreLease = coordinationSession .acquireEphemeralSemaphore (
7591 lockConfiguration .getName (),
@@ -81,12 +97,12 @@ public Optional<SimpleLock> lock(LockConfiguration lockConfiguration) {
8197 logger .debug (coordinationSession .toString ());
8298
8399 if (semaphoreLease .isSuccess ()) {
84- logger .info ("Instance[{}] acquired semaphore[SemaphoreName={}]" , instanceInfo ,
100+ logger .debug ("Instance[{}] acquired semaphore [SemaphoreName={}]" , instanceInfo ,
85101 semaphoreLease .getValue ().getSemaphoreName ());
86102
87103 return Optional .of (new YdbSimpleLock (semaphoreLease .getValue (), instanceInfo , coordinationSession ));
88104 } else {
89- logger .info ("Instance[{}] did not acquire semaphore" , instanceInfo );
105+ logger .debug ("Instance[{}] did not acquire semaphore" , instanceInfo );
90106
91107 return Optional .empty ();
92108 }
@@ -96,7 +112,7 @@ private record YdbSimpleLock(SemaphoreLease semaphoreLease, String metaInfo,
96112 CoordinationSession coordinationSession ) implements SimpleLock {
97113 @ Override
98114 public void unlock () {
99- logger .info ("Instance[{}] released semaphore[SemaphoreName={}]" , metaInfo , semaphoreLease .getSemaphoreName ());
115+ logger .info ("Instance[{}] released semaphore [SemaphoreName={}]" , metaInfo , semaphoreLease .getSemaphoreName ());
100116
101117 semaphoreLease .release ().join ();
102118
0 commit comments