বর্তমানে পরীক্ষা চলছে: সম্পূর্ণ হলে GitHub কোড উন্মুক্ত করা হবে।

সাড়া মেলানোর নিয়ম (ক্লায়েন্ট বাস্তবায়ন)

সাড়া অনুরোধের ক্রম থেকে ভিন্ন ক্রমে আসতে পারে বলে (অপেক্ষায় থাকা অর্জনের সাড়া তার পালা এলে আসে), ক্লায়েন্টকে নিচের নিয়ম মেনে সাড়া অনুরোধের সাথে মেলাতে হয় — একটি সংযোগে মিশে আসা সাড়াগুলোকে তাদের নিজ নিজ অনুরোধে ভাগ করে দেওয়ার ডিমাল্টিপ্লেক্সিং পদ্ধতি এটি।

নিয়মবিবরণ
মেলানোর কীQueue/server capacity পূর্ণ বলে নিশ্চিত rejection; সঙ্গে সঙ্গে Busy, internal retry নয়
একই (op, key)-তে একাধিক অনুরোধFIFO ধরে নেওয়া যাবে না — অবশ্যই শনাক্তকারী দিয়ে নির্দিষ্ট করতে হবে। নিচের ব্যাখ্যা দেখুন
নিবন্ধনের সময়অনুরোধ পাঠানোর আগেই অপেক্ষমাণ নিবন্ধিত হয় (সাড়া আগে পৌঁছে যাওয়ার রেস ঠেকাতে)
N/T হ্যান্ডলিংত্রুটি নয় এমন মান ("ছিল না"/"টাইমআউট") হিসেবে ফেরত
B হ্যান্ডলিংসারি পূর্ণ — সঙ্গে সঙ্গে ব্যর্থ না করে wait বাজেটের মধ্যে ব্যাকঅফসহ পুনরায় চেষ্টা
M হ্যান্ডলিংশুধু allowlisted address leader hint হিসেবে রেখে connection বন্ধ; owner/key নেই বলে sent pending-এর সঙ্গে correlation নয়
L হ্যান্ডলিংশুধু leader hint update, connection চালু; server notice, response নয়
E no_leader / E not_active / E auth_failedConnection বন্ধ ও error-specific backoff; no_leader hint-ও invalid করে
অন্য E / অজানা সাড়াUncorrelatable, তাই connection-fatal; sent acquire Indeterminate
কোনো অপেক্ষমাণ নেই এমন সাড়াProtocol/session mismatch: বন্ধ। A হলে known exact token reserved release lane-এ দিন

FIFO নয়, শনাক্তকারী দিয়ে কেন মেলাতে হবে

এক key-তেও immediate success, queue wait এবং B rejection ভিন্ন সময়ে শেষ হয়। এক connection-এ একাধিক key-ও pipelined। FIFO দিয়ে match নয়; echoed identifier, op ও key একসঙ্গে যাচাই করুন।

বাতিল হওয়া অনুরোধ ও অনাথ লক

Cancelled request server-এ আগে grant হয়ে থাকলে lock থাকতে পারে। এক byte send-এর পর final response না থাকলে ফল Indeterminate। একই owner দিয়ে A-কে status query-এর মতো resend করবেন না। Token parse হয়ে থাকলেই best-effort exact-token R; unknown grant lease expiry-তে ফেরে।

তাই send-এর পর cancel বা framing error-এ connection বন্ধ হয়। শুধু pending সরালে response orphan হতে পারে। Socket close committed grant release-এর প্রমাণ নয়: token জানা থাকলে exact-token R, না হলে lease expiry পর্যন্ত Indeterminate