Rust-rocksdb: قم بالترقية إلى أحدث مكتبة أساسية في RocksDB

تم إنشاؤها على ٤ نوفمبر ٢٠١٨  ·  11تعليقات  ·  مصدر: rust-rocksdb/rust-rocksdb

يستهدف ربط الصدأ حاليًا الإصدار 5.14.2 من المكتبة الأساسية ، ولكن تم إصدار 5.15.10 منذ أكثر من شهر بقليل. يجب أن نقوم بالترقية إلى أحدث إصدار ، على افتراض أنه لا ينتج عنه أي تغييرات مفاجئة / مفاجئة (قدم الإصدار 5.15.0 تغييرات API وميزات جديدة ).

enhancement

التعليق الأكثر فائدة

سأفترض أن # 166 يحقق متطلبات الارتباط الديناميكي ما لم يقل أحدهم خلاف ذلك. الإصدار الحالي من RocksDB اعتبارًا من اليوم هو 5.17.2 ويقترب من 4 أشهر. سوف أقوم بالتحديث إلى أحدث إصدار.

ال 11 كومينتر

لا أعرف الكثير عن عمليات الربط المُولدة تلقائيًا ، ولكن هل من الممكن نقل شيء مثل الارتباط الديناميكي؟
على سبيل المثال ، في ارتباطات leveldb (https://github.com/skade/leveldb-sys) تحتاج إلى تثبيت libleveldb-dev من مستودع التوزيع وبعد ذلك لا تحتاج إلى تجميع كل شيء في كل مرة ، لذلك فهو يجمع فقط الارتباطات التي تستغرق بضع ثوانٍ.

هنا فقط يمكن أن يستغرق تجميع librocksdb-sys بضع دقائق ، لأنه (أفترض) أنه يجمع كود C ++ الخاص بـ rocksdb.

بهذه الطريقة ستحل مشكلة النسخ. طالما أن facebook يحتفظ بواجهة برمجة التطبيقات العامة نفسها ، فسيكون المستخدم هو المسؤول عن الإصدار الأساسي وليس المشرف على الروابط.

elichai نقطة جيدة. فكرت في هذا أيضًا وأنا أخطط للقيام بذلك في المستقبل.

أعتقد أنني ممزقة بشأن هذا. أحب راحة ربط المكتبة بشكل ثابت ولا أحتاج إلى تثبيت تبعيات إضافية. تمنع ذاكرة التخزين المؤقت الحاجة إلى إعادة ترجمة المكتبة باستمرار ، لذلك لا أزعجني بالحاجة إلى تجميع كل شيء مرة واحدة. نظرًا لأنه تم تضمينه بشكل ثابت لفترة طويلة ، فأنا أرغب في الحصول على أفكار المجتمعات حول هذه المسألة ، ربما في قضية مختلفة.

أود السماح بالربط الثابت والديناميكي (ربما باستخدام الميزات) - سيكون هذا هو النهج الأكثر مرونة بالنسبة لي. لا يعد وقت التجميع مشكلة في الوقت الحالي بالنسبة للمكتبة نفسها ، ولكنه يؤثر أيضًا على وقت تجميع المشروعات الأخرى التي تعتمد علينا ، وهو أمر مؤسف.

vitvakatu بالضبط. للمكتبة نفسها وقت الترجمة على ما يرام. ولكن عندما أقوم بتجميع مشروعي ، فإنه "يتعطل" لفترة أطول على librocksdb-sys مقارنة بالتبعية الأخرى (حجم الطلب أطول ، بدلاً من بضع ثوانٍ يمكن أن يستغرق أكثر من دقيقة)

vitvakatu أحب هذه الفكرة (دعم كليهما).

هل يحقق # 166 هذا بالفعل؟ ربما لكل من الارتباط الثابت والديناميكي مدعوم بالفعل ولكن ليس موثقًا جيدًا أو مريحًا؟

سأفترض أن # 166 يحقق متطلبات الارتباط الديناميكي ما لم يقل أحدهم خلاف ذلك. الإصدار الحالي من RocksDB اعتبارًا من اليوم هو 5.17.2 ويقترب من 4 أشهر. سوف أقوم بالتحديث إلى أحدث إصدار.

ثابت في # 261. شكراaleksuss!

فقط للتوضيح ، إذا كنت أريد ارتباطًا ديناميكيًا ، يجب أن أضيف env var ROCKSDB_LIB_DIR مع موقع .so / .a فيه ، أليس كذلك؟

elichai نعم

هل كانت هذه الصفحة مفيدة؟
0 / 5 - 0 التقييمات