Ini adalah perintah udebug yang dapat dijalankan di penyedia hosting gratis OnWorks menggunakan salah satu dari beberapa workstation online gratis kami seperti Ubuntu Online, Fedora Online, emulator online Windows atau emulator online MAC OS
PROGRAM:
NAMA
udebug - Melaporkan status proses Ubik untuk proses server database
RINGKASAN
udebug server <Server mesin> [-Pelabuhan <IP pelabuhan>]
[-panjang] [-bantu]
udebug -s <Server mesin> [-p <IP pelabuhan>] [-l] [-h]
DESKRIPSI
The udebug perintah menampilkan status proses Ubik ringan untuk database
proses server diidentifikasi oleh -Pelabuhan argumen yang berjalan di server database
mesin bernama oleh server argumen. Output mengidentifikasi mesin di mana peer
proses server database sedang berjalan, yang mana di antaranya adalah situs sinkronisasi (Ubik
koordinator), dan status koneksi di antara mereka.
PILIHAN
server <Server mesin>
Beri nama mesin server database yang menjalankan proses yang akan ditampilkan
informasi status. Berikan alamat IP mesin dalam format desimal bertitik,
nama host yang sepenuhnya memenuhi syarat (misalnya, fs1.abc.com), atau bentuk singkatan terpendek
nama host yang membedakannya dari mesin lain. Penggunaan yang berhasil dari
bentuk singkatan tergantung pada ketersediaan layanan resolusi nama (seperti
Domain Name Service atau tabel host lokal) pada saat perintah dikeluarkan.
-Pelabuhan <IP pelabuhan>
Mengidentifikasi proses server database untuk menampilkan informasi status, baik
dengan nama proses atau nomor port. Berikan salah satu dari nilai berikut.
pelayan atau 7021 untuk Server Cadangan
kasserver atau 7004 untuk Server Otentikasi
pt server atau 7002 untuk Server Perlindungan
server vl atau 7003 untuk Server Lokasi Volume
-panjang
Melaporkan informasi tambahan tentang setiap rekan mesin yang diberi nama oleh server
argumen. Informasi muncul secara default jika mesin itu adalah sinkronisasi
situs.
-bantu
Mencetak bantuan online untuk perintah ini. Semua opsi valid lainnya diabaikan.
KELUARAN
Beberapa pesan dalam output memberikan informasi status dasar tentang Ubik
proses pada mesin yang ditentukan oleh server argumen, dan pesan yang tersisa adalah
berguna sebagian besar untuk tujuan debugging.
Untuk memeriksa status dasar Ubik, keluarkan perintah untuk setiap mesin server database secara bergantian. Di dalam
output untuk masing-masing, salah satu pesan berikut muncul di sepertiga atas output.
Saya menyinkronkan situs. . . (<#_situs> server)
Saya tidak menyinkronkan situs
Untuk situs sinkronisasi, pesan berikut menunjukkan bahwa semua situs memiliki hal yang sama
versi database, yang menunjukkan bahwa Ubik berfungsi dengan benar. Lihat
berikut untuk deskripsi nilai selain "1f".
Status pemulihan 1f
Untuk operasi Ubik yang benar, jam mesin server database harus menyepakati waktunya. NS
pesan berikut, yang merupakan baris kedua dan ketiga dalam output, laporkan saat ini
tanggal dan waktu sesuai dengan jam mesin server database dan jam di
mesin dimana udebug perintah dikeluarkan.
Tuan rumah waktu adalah
Waktu setempat adalah (perbedaan waktu detik)
NS adalah perbedaan antara jam mesin server database dan lokal
jam. Nilai absolutnya tidak penting untuk fungsi Ubik, tetapi perbedaan lebih dari
beberapa detik antara condong nilai untuk mesin server database menunjukkan bahwa
jam mereka tidak sinkron dan kinerja Ubik mungkin terhambat.
Berikut ini adalah deskripsi dari semua pesan di output. Seperti yang dicatat, ini sangat berguna
untuk debugging dan paling berarti bagi seseorang yang mengerti implementasi Ubik.
Output dimulai dengan pesan berikut. Pesan pertama melaporkan alamat IP
yang dikonfigurasi dengan sistem operasi pada mesin yang ditentukan oleh server
argumen. Seperti disebutkan sebelumnya, pesan kedua dan ketiga melaporkan tanggal saat ini dan
waktu sesuai dengan jam pada mesin server database dan mesin tempat
udebug perintah dikeluarkan, masing-masing. Semua cap waktu berikutnya dalam output adalah
dinyatakan dalam bentuk jam lokal daripada jam mesin server database.
Alamat tuan rumah adalah:
Tuan rumah waktu adalah
Waktu setempat adalah (perbedaan waktu detik)
jika lebih dari sekitar 10 detik, muncul pesan berikut. Seperti yang dicatat, itu
tidak selalu menunjukkan kerusakan Ubik: ini menunjukkan kemiringan jam di antara database
mesin server dan mesin lokal, bukan di antara mesin server database.
**** jam mungkin buruk
Jika perintah udebug dikeluarkan saat proses pemilihan koordinator dan voting belum
belum dimulai, pesan berikut muncul berikutnya.
Suara ya terakhir belum diberikan
Jika tidak, output berlanjut dengan pesan berikut.
Terakhir ya pilih NS detik yang lalu (sinkronisasi situs);
Pemungutan suara terakhir dimulai detik yang lalu (at )
Versi db lokal adalah
Yang pertama menunjukkan rekan mana yang terakhir dipilih oleh proses Ubik ini sebagai koordinator (bisa
memilih untuk dirinya sendiri) dan sudah berapa lama mengirimkan suara. Pesan kedua menunjukkan berapa lama
lalu koordinator Ubik meminta konfirmasi suara dari situs sekunder. Biasanya,
dan nilainya sama; perbedaan di antara mereka dapat menunjukkan
clock condong atau koneksi jaringan yang lambat antara dua mesin server database. Kecil
perbedaan itu tidak berbahaya. Pesan ketiga melaporkan nomor versi saat ini
dari database yang dikelola oleh proses Ubik ini. Ini memiliki dua bidang yang dipisahkan
oleh suatu periode. Bidang sebelum periode didasarkan pada stempel waktu yang mencerminkan kapan
database pertama kali diubah setelah pemilihan koordinator terbaru, dan bidang setelah
periode menunjukkan jumlah perubahan sejak pemilihan.
Output berlanjut dengan pesan yang berbeda tergantung pada apakah proses Ubik
koordinator atau tidak.
· Jika hanya ada satu mesin server database, selalu koordinatornya
(situs sinkronisasi), seperti yang ditunjukkan oleh pesan berikut.
Saya menyinkronkan situs selamanya (1 server)
· Jika ada beberapa situs database, dan server argumen nama koordinator
(situs sinkronisasi), output berlanjut dengan dua pesan berikut.
Saya menyinkronkan situs sampai detik dari sekarang (at )
(<#_situs> server)
Status pemulihan
Pesan pertama (yang dilaporkan dalam satu baris) melaporkan berapa lama situs tersebut
tetap menjadi koordinator bahkan jika upaya berikutnya untuk mempertahankan kuorum gagal, dan berapa banyak
situs berpartisipasi dalam kuorum. NS bendera bidang dalam pesan kedua adalah a
bilangan heksadesimal yang menunjukkan keadaan kuorum saat ini. Nilai "1f"
menunjukkan sinkronisasi database lengkap, sedangkan nilai "f" berarti bahwa
koordinator memiliki database yang benar tetapi tidak dapat menghubungi semua situs sekunder untuk
menentukan apakah mereka juga memilikinya. Nilai yang lebih rendah dapat diterima jika udebug perintah adalah
dikeluarkan selama pemilihan koordinator, tetapi mereka menunjukkan masalah jika mereka bertahan. NS
masing-masing bendera memiliki arti sebagai berikut:
0x1 Mesin ini adalah koordinatornya.
0x2 Koordinator telah menentukan situs mana yang memiliki database tertinggi
nomor versi.
0x4 Koordinator memiliki salinan database dengan nomor versi tertinggi.
0x8 Nomor versi database telah diperbarui dengan benar.
0x10
Semua situs memiliki database dengan nomor versi tertinggi.
Jika perintah udebug dikeluarkan saat koordinator menulis perubahan ke dalam
database, pesan tambahan berikut muncul.
Saat ini saya mengelola transaksi tulis I
· Jika server argumen menamai situs sekunder, output berlanjut dengan
pesan berikut.
Saya tidak menyinkronkan situs
Tuan rumah terendah telah dipasang detik yang lalu
Sinkronkan tuan rumah telah dipasang detik yang lalu
NS adalah alamat IP terendah dari rekan mana pun tempat proses Ubik
telah menerima pesan baru-baru ini, sedangkan adalah alamat IP dari
koordinator saat ini. Jika berbeda, mesin dengan alamat IP terendah tidak
koordinator saat ini. Proses Ubik terus voting untuk saat ini
koordinator selama mereka tetap berhubungan, yang memberikan stabilitas maksimum.
Namun, dalam pemilihan koordinator lain, proses Ubik ini memilih
situs sebagai gantinya (dengan asumsi mereka berhubungan), karena memiliki bias untuk
memberikan suara dalam pemilihan untuk situs dengan alamat IP terendah.
Untuk sinkronisasi dan situs sekunder, output berlanjut dengan yang berikut:
pesan. Pesan pertama melaporkan nomor versi database di
situs sinkronisasi, yang harus cocok dengan dilaporkan sebelumnya
Pesan "versi db lokal". Pesan kedua menunjukkan berapa banyak catatan VLDB
saat ini dikunci untuk operasi apa pun atau untuk menulis secara khusus. Nilainya bukan nol jika
itu udebug perintah dikeluarkan saat operasi sedang berlangsung.
Versi db situs sinkronisasi adalah
halaman terkunci, dari mereka untuk menulis
Pesan berikut muncul berikutnya hanya jika ada kunci baca atau tulis di database
catatan:
Ada kunci baca yang dipegang
Ada kunci tulis yang dipegang
Demikian pula, satu atau lebih pesan berikut muncul berikutnya hanya jika ada yang dibaca atau
tulis transaksi yang sedang berlangsung saat udebug perintah dikeluarkan:
Ada transaksi tulis aktif
Setidaknya ada satu transaksi baca yang aktif
Tanggal transaksi adalah
Jika mesin dinamai dengan server argumen adalah koordinator, pesan berikutnya melaporkan
ketika koordinator saat ini terakhir memperbarui database.
Terakhir kali versi db baru diberi label adalah:
detik yang lalu (at )
Jika mesin dinamai dengan server argumen adalah koordinator, output diakhiri dengan
entri untuk setiap situs sekunder yang berpartisipasi dalam kuorum, sebagai berikut
Format.
Server ( ): (db )
suara terakhir rcvd detik yang lalu (at ),
suar terakhir dikirim detik yang lalu (at ),
suara terakhir adalah { ya | tidak }
dbcurrent={ 0 | 1 }, naik={ 0 | 1 } suarSejak={ 0 | 1 }
Baris pertama melaporkan alamat IP situs dan nomor versi database-nya
memelihara. NS laporan lapangan berapa lama koordinator menerima suara
pesan dari proses Ubik di situs, dan lapangan berapa lama yang lalu
koordinator terakhir meminta pesan suara. jika udebug perintah dikeluarkan selama
proses pemilihan koordinator dan pemungutan suara belum dimulai, muncul pesan berikut:
sebagai gantinya.
Suara terakhir tidak pernah rcvd
Suar terakhir tidak pernah dikirim
Pada baris terakhir dari setiap entri, bidang memiliki arti sebagai berikut:
· "dbcurrent" adalah 1 jika situs memiliki database dengan nomor versi tertinggi, 0 jika
tidak.
· "naik" adalah 1 jika proses Ubik di situs berfungsi dengan benar, 0 jika tidak.
· "beacon Since" bernilai 1 jika situs telah menanggapi permintaan terakhir koordinator untuk
suara, 0 jika tidak.
Termasuk -panjang flag menghasilkan entri rekan bahkan ketika server nama argumen a
situs sekunder, tetapi dalam hal ini hanya Alamat IP lapangan dijamin akurat.
Misalnya, nilai dalam bidang biasanya 0.0, karena situs sekunder
jangan polling rekan-rekan mereka untuk informasi ini. Nilai-nilai dalam suara_terakhir dan suar_terakhir
bidang menunjukkan kapan situs ini terakhir kali menerima atau meminta suara sebagai koordinator; mereka
umumnya menunjukkan waktu pemilihan koordinator terakhir.
CONTOH
Contoh ini memeriksa status proses Ubik untuk Server Lokasi Volume di
mesin "afs1", yang merupakan situs sinkronisasi.
% udebug afs1 vlserver
Alamat tuan rumah adalah: 192.12.107.33
Waktu tuan rumah 192.12.107.33 adalah Rabu 27 Okt 09:49:50 1999
Waktu setempat adalah Rab 27 Okt 09:49:52 1999 (perbedaan waktu 2 detik)
Suara ya terakhir untuk 192.12.107.33 adalah 1 detik yang lalu (situs sinkronisasi);
Pemungutan suara terakhir dimulai 1 detik yang lalu (pada Rab 27 Okt 09:49:51 1999)
Versi db lokal adalah 940902602.674
Saya menyinkronkan situs hingga 58 detik dari sekarang (pada Rabu 27 Okt 09:50:50 1999) (3 server)
Status pemulihan 1f
Versi db situs sinkronisasi adalah 940902602.674
0 halaman terkunci, 0 di antaranya untuk menulis
Terakhir kali versi db baru diberi label adalah:
129588 dtk yang lalu (pada Sen 25 Okt 21:50:04 1999)
Server( 192.12.107.35 ): (db 940902602.674)
suara terakhir rcvd 2 detik yang lalu (pada Rab 27 Okt 09:49:50 1999),
suar terakhir dikirim 1 detik yang lalu (pada Rab 27 Okt 09:49:51 1999), suara terakhir adalah ya
dbcurrent=1, up=1 beaconSejak=1
Server( 192.12.107.34 ): (db 940902602.674)
suara terakhir rcvd 2 detik yang lalu (pada Rab 27 Okt 09:49:50 1999),
suar terakhir dikirim 1 detik yang lalu (pada Rab 27 Okt 09:49:51 1999), suara terakhir adalah ya
dbcurrent=1, up=1 beaconSejak=1
Contoh ini memeriksa status Server Otentikasi pada mesin dengan alamat IP
192.12.107.34, yang merupakan situs sekunder. Jam lokal sekitar 4 menit di belakang
jam mesin server database.
% udebug 192.12.107.34 7004
Alamat tuan rumah adalah: 192.12.107.34
Waktu tuan rumah 192.12.107.34 adalah Rabu 27 Okt 09:54:15 1999
Waktu setempat adalah Rab 27 Okt 09:50:08 1999 (perbedaan waktu -247 detik)
**** jam mungkin buruk
Suara ya terakhir untuk 192.12.107.33 adalah 6 detik yang lalu (situs sinkronisasi);
Pemungutan suara terakhir dimulai 6 detik yang lalu (pada Rab 27 Okt 09:50:02 1999)
Versi db lokal adalah 940906574.25
Saya tidak menyinkronkan situs
Host terendah 192.12.107.33 ditetapkan 6 detik yang lalu
Sinkronisasi host 192.12.107.33 disetel 6 detik yang lalu
Versi db situs sinkronisasi adalah 940906574.25
0 halaman terkunci, 0 di antaranya untuk menulis
HAK ISTIMEWA DIBUTUHKAN
None
Gunakan udebug online menggunakan layanan onworks.net