Pengait kata (tags) tulisan ‘ smbfs

09
Jun
09

SMBFS vs CIFS — Part 2

Post ini merupakan lanjutan dari post SMBFS vs CIFS. Setelah saya melakukan investigasi lebih lanjut, saya menemukan hasil yang berbeda dengan yang sebelumnya saya dapatkan. Which is, cukup aneh, dan membuat saya sangat heran. Padahal metode test yang saya lakukan masih sama.

Untuk itu, saya merasa perlu menerangkan secara singkat prosedur test yang saya lakukan:
1. User1 dan User2 adalah 2 (dua) komputer yang berbeda.
2. Mounting dengan CIFS di User1 dan User2.
3. Dibuat satu file DBF untuk ekperimen, kita sebut file tersebut test.dbf.
4. User1 flock() file test.dbf.
5. User2 flock() file test.dbf juga. User2 harusnya diblok dengan pesan ‘Attempting to lock…’
6. User1 update record.
7. User1 unlock file test.dbf.
8. Pada saat yang sama User2 seharusnya keluar dari blok, dan me-lock file test.dbf.
9. User1 dan User2 cek isi record, apakah sudah terlihat hasil update User1 di langkah 6.
10. User2 update record.
11. User2 unlock file test.dbf
12. User1 dan User2 cek isi record, apakah sudah terlihat hasil update User2 di langkah 10.
13. User1 flock() file test.dbf.
14. User1 dan User2 cek isi record, bandingkan dengan hasil di langkah 12.

Hasil yang sudah saya dapatkan sebelumnya menunjukkan bahwa dengan CIFS kita dapat me-lock suatu file DBF di FoxPro, namun update oleh satu user tidak dapat dilihat oleh user lain sekalipun file sudah di-lock. Dengan membuka ulang file DBF-nya dengan “use”, barulah perubahan tersebut dapat kita lihat. Terlepas dari apakah kita me-lock file-nya atau tidak.

Hasil test terbaru yang saya lakukan, menyimpulkan bahwa dengan locking, update bisa terlihat secara langsung, tanpa perlu membuka ulang DBF dengan use. Kemungkinan perubahan ini diakibatkan oleh mount options yang berbeda. Kebetulan saya mendapatkan informasi dari arsip suatu milis yang saya lupa namanya. Dengan menambahkan nounix dan directio sebagai mount options, sepertinya membuat perbedaan antara hasil test pertama dengan hasil test kedua.

Namun, syarat agar perubahan tersebut dapat dilihat secara langsung oleh user lain, ada 2 cara:
1. Dengan ‘go top’ dahulu kemudian ‘goto’ record yang dimaksud. Atau dengan kata lain, kita pindah ke record yang lain dahulu kemudian kembali ke record yang semula. Update dapat dilihat.
2. Dengan mekanisme locking dengan flock() seperti langkah-langkah test yang saya sebutkan di atas.

Cara yang terbaik tentu saja dengan mekanisme locking dengan flock(), sesuai anjuran FoxPro di Help page nya.

15
Apr
09

SMBFS vs CIFS

Beberapa tahun yang lalu, diperkenalkan CIFS (Common Internet File System) di Linux sebagai pengganti SMBFS (Samba File System). Awalnya saya tidak tahu apa perbedaan antara keduanya, tapi yang pasti berdasarkan beberapa sumber yang dapat dipercaya, CIFS lebih baik dari SMBFS. Nah, di mana lebih baiknya saya juga kurang mengerti.

Jadi untuk solusi Linux+Dosemu+FoxPro+SMBFS, saya rubah menjadi Linux+Dosemu+FoxPro+CIFS. Perubahan ini tidak saya lakukan menyeluruh untuk melihat di mana letak perbedaannya, dan sejauh mana peningkatan kedua File System ini. Kondisi yang ada saat ini, beberapa komputer menggunakan CIFS, dan yang lain menggunakan SMBFS. Perlu diketahui juga bahwa salah satu alasan yang memperkuat saya untuk migrasi ke CIFS di beberapa komputer adalah kenyataan bahwa di Ubuntu versi terbaru (Gutsy ke atas) solusi Linux+Dosemu+FoxPro+SMBFS tidak bekerja. Files yang di-mount dengan SMBFS tidak dapat di-write di Dosemu.

Lalu worst case pun terjadi, anehnya, kasus-kasus bermunculan tidak langsung muncul pada saat saya merubah dari SMBFS ke CIFS. Kasus-kasus pun munculnya secara acak baik waktu, program, dan database. Saya sempat frustasi beberapa bulan karena masalah ini.

Akhirnya saya melakukan test, yang saya coba se-sistematik mungkin. Saya melakukan test perbandingan terhadap files yang di-mount dengan SMBFS dan CIFS. Hasilnya pun kemudian memberikan pencerahan yang luar biasa (untuk saya).

Hasil dari test menunjukkan bahwa CIFS memang lebih baik dari SMBFS dalam hal Locking. Artinya, mekanisme Locking di FoxPro dapat berjalan dengan baik. Tapi, kelemahannya adalah isi record / file tidak langsung ter-update saat ada perubahan oleh user lain. Ini fatal sekali. Meskipun sudah dilakukan prosedur locking sesuai standar, file tidak ter-update. Apabila file di buka ulang, barulah update dari user lain terlihat.

Berbeda dengan SMBFS, mekanisme Locking di FoxPro tidak dapat dilakukan. Meskipun file / record di-lock, user lain tetap dapat melakukan lock di file / record yang sama. Namun, update file dapat terlihat secara instant oleh user lain. Ini tentunya setelah saya modifikasi smb.conf untuk mematikan Op-Lock terhadap files database.

Langkah selanjutnya adalah merubah semua komputer untuk menggunakan SMBFS. Tapi masalahnya untuk komputer dengan sistem operasi Ubuntu Gutsy, Hardy, Intrepid tidak dapat menggunakan SMBFS. Maka solusinya adalah dengan mengganti sistem operasi dengan Ubuntu versi sebelumnya (downgrade) atau menggunakan Distro lain.




RSS quote of the day

  • Nelson Mandela
    "Money won't create success, the freedom to make it will."

calendar

Desember 2009
S S R K J S M
« Jun    
 123456
78910111213
14151617181920
21222324252627
28293031  

categories

archive