Edge-home-orchestration-go: [Penyimpanan Data] Kesalahan waktu proses

Dibuat pada 19 Jan 2021  ·  7Komentar  ·  Sumber: lf-edge/edge-home-orchestration-go

Jelaskan bugnya
Kesalahan runtime ketika server pengecoran edgex tidak berjalan,

level=ERROR ts=2021-01-19T01:51:50.815737266Z app=datastorage source=init.go:154 msg="Get \"http://localhost:48080/api/v1/ping\": dial tcp 127.0.0.1:48080: connect: connection refused"
level=INFO ts=2021-01-19T01:51:51.817181193Z app=datastorage source=init.go:144 msg="Check Metadata service's status by ping..."
level=INFO ts=2021-01-19T01:51:51.818287982Z app=datastorage source=init.go:144 msg="Check Data service's status by ping..."
level=ERROR ts=2021-01-19T01:51:51.822577012Z app=datastorage source=init.go:154 msg="Get \"http://localhost:48081/api/v1/ping\": dial tcp 127.0.0.1:48081: connect: connection refused"
level=ERROR ts=2021-01-19T01:51:51.824049381Z app=datastorage source=init.go:154 msg="Get \"http://localhost:48080/api/v1/ping\": dial tcp 127.0.0.1:48080: connect: connection refused"
level=INFO ts=2021-01-19T01:51:52.825768174Z app=datastorage source=init.go:144 msg="Check Metadata service's status by ping..."
level=INFO ts=2021-01-19T01:51:52.826907105Z app=datastorage source=init.go:144 msg="Check Data service's status by ping..."
level=ERROR ts=2021-01-19T01:51:52.830784824Z app=datastorage source=init.go:154 msg="Get \"http://localhost:48081/api/v1/ping\": dial tcp 127.0.0.1:48081: connect: connection refused"
level=ERROR ts=2021-01-19T01:51:52.83209855Z app=datastorage source=init.go:154 msg="Get \"http://localhost:48080/api/v1/ping\": dial tcp 127.0.0.1:48080: connect: connection refused"
INFO[2021-01-19T01:51:53Z]discovery.go:833 activeDiscovery [discoverymgr] activeDiscovery!!!
INFO[2021-01-19T01:51:53Z]discovery.go:571 func1 [deviceDetectionRoutine] edge-orchestration-3125da9e-1e9a-41aa-ac83-004725eb2d1e
level=ERROR ts=2021-01-19T01:51:53.83359109Z app=datastorage source=init.go:139 msg="dependency Metadata service checking time out"
level=ERROR ts=2021-01-19T01:51:53.834663766Z app=datastorage source=init.go:139 msg="dependency Data service checking time out"
level=INFO ts=2021-01-19T01:51:53.840074015Z app=datastorage source=httpserver.go:116 msg="Web server shutting down"
level=INFO ts=2021-01-19T01:51:53.841736032Z app=datastorage source=httpserver.go:107 msg="Web server stopped"
level=INFO ts=2021-01-19T01:51:54.341966491Z app=datastorage source=httpserver.go:118 msg="Web server shut down"
panic: runtime error: invalid memory address or nil pointer dereference
[signal SIGSEGV: segmentation violation code=0x1 addr=0x20 pc=0x8d1a0e]

goroutine 44 [running]:
github.com/edgexfoundry/device-sdk-go/internal/autoevent.(*manager).StopAutoEvents(0x0)
        /home/t25kim/edge-home-orchestration-go/vendor/github.com/edgexfoundry/device-sdk-go/internal/autoevent/manager.go:69 +0x4e
github.com/edgexfoundry/device-sdk-go/pkg/service.(*DeviceService).Stop(0xc0004c2780, 0xc0005ae600)
        /home/t25kim/edge-home-orchestration-go/vendor/github.com/edgexfoundry/device-sdk-go/pkg/service/service.go:134 +0x45
github.com/edgexfoundry/device-sdk-go/pkg/service.Main(0xe2dbda, 0xb, 0xe3a91d, 0x1a, 0xda46e0, 0xc0005a5de0, 0xf46e20, 0xc0005ae600, 0xc0000330a0, 0xc0005ac300, ...)
        /home/t25kim/edge-home-orchestration-go/vendor/github.com/edgexfoundry/device-sdk-go/pkg/service/main.go:69 +0x6fa
github.com/edgexfoundry/device-sdk-go/pkg/startup.Bootstrap(0xe2dbda, 0xb, 0xe3a91d, 0x1a, 0xda46e0, 0xc0005a5de0)
        /home/t25kim/edge-home-orchestration-go/vendor/github.com/edgexfoundry/device-sdk-go/pkg/startup/bootstrap.go:19 +0x117
created by github.com/lf-edge/edge-home-orchestration-go/src/controller/storagemgr.StorageImpl.StartStorage
        /home/t25kim/edge-home-orchestration-go/src/controller/storagemgr/storage.go:51 +0xef

Untuk Mereproduksi

  1. Letakkan file konfigurasi yang diperlukan di /var/edge-orchestration/datastorage/
  2. Jalankan edge-home-orchestration-go

Perilaku yang diharapkan
Periksa server edgex pengecoran terlebih dahulu sebelum memulai Penyimpanan Data.

Konfigurasi lingkungan pengujian (harap lengkapi informasi berikut):

  • Versi firmware: Ubuntu 18.04
  • Perangkat keras: x86-64
  • Rilis Orkestrasi Tepi: Kelapa
bug

Komentar yang paling membantu

Pasca komunikasi dengan anggota EdgeX, mereka telah memberi kami garpu: github.com/hahattan/device-sdk-go v1.4.1 dengan perbaikan di cabang Hanoi, yang menyebabkan crash ini.

Saya telah menguji perbaikan dengan menggunakan perintah ganti di go.mod kami. Itu tampaknya bekerja dengan baik.

Seperti yang telah Anda sebutkan, kami dapat menunggu hingga rilis Irlandia atau kami juga dapat mengkloning perbaikan ke repo kami hingga EdgeX merilis Irlandia.

Silakan berbagi pemikiran Anda tentang hal yang sama?
@t25kim

Terima kasih !

Semua 7 komentar

@suresh-lc PTAL. Terima kasih sebelumnya.

Hai Sunchit,

Saya sudah tahu mengapa itu jatuh. Ini adalah bug, dan tidak terlalu sulit untuk diperbaiki.

AutoEvent Manager tidak diinisialisasi saat Layanan dihentikan oleh waktu ketergantungan habis (Data Inti EdgeX dan Metadata Inti).

Di baris ini, https://github.com/edgexfoundry/device-sdk-go/blob/v1.4.0/pkg/service/service.go#L134

Kita harus memeriksa apakah AutoEvent Manager adalah nihil sebelum memanggil StopAutoEvents.

Kami telah menyelesaikan masalah ini di V2 (Irlandia).

Hai Jim dan Iain,

Bolehkah kami membuat cabang hanoi untuk memperbaiki masalah ini dan memberi tag 1.4.1 untuk mereka?

Hai Sunchit,

Saya sudah tahu mengapa itu jatuh. Ini adalah bug, dan tidak terlalu sulit untuk diperbaiki.

AutoEvent Manager tidak diinisialisasi saat Layanan dihentikan oleh waktu ketergantungan habis (Data Inti EdgeX dan Metadata Inti).

Di baris ini, https://github.com/edgexfoundry/device-sdk-go/blob/v1.4.0/pkg/service/service.go#L134

Kita harus memeriksa apakah AutoEvent Manager adalah nihil sebelum memanggil StopAutoEvents.

Kami telah menyelesaikan masalah ini di V2 (Irlandia).

Hai Jim dan Iain,

Bolehkah kami membuat cabang hanoi untuk memperbaiki masalah ini dan memberi tag 1.4.1 untuk mereka?

@suresh-lc Siapa yang menulis email ini?

Hai Sunchit,
Saya sudah tahu mengapa itu jatuh. Ini adalah bug, dan tidak terlalu sulit untuk diperbaiki.
AutoEvent Manager tidak diinisialisasi saat Layanan dihentikan oleh waktu ketergantungan habis (Data Inti EdgeX dan Metadata Inti).
Di baris ini, https://github.com/edgexfoundry/device-sdk-go/blob/v1.4.0/pkg/service/service.go#L134
Kita harus memeriksa apakah AutoEvent Manager adalah nihil sebelum memanggil StopAutoEvents.
Kami telah menyelesaikan masalah ini di V2 (Irlandia).
Hai Jim dan Iain,
Bolehkah kami membuat cabang hanoi untuk memperbaiki masalah ini dan memberi tag 1.4.1 untuk mereka?

@suresh-lc Siapa yang menulis email ini?

Cloud Tsai dari tim Layanan Perangkat EdgeX

Masalah ini akan diselesaikan dengan menggunakan edgexfoundry versi 'Irlandia', tetapi belum dirilis secara resmi.
Saya ingin meninggalkan ini sebagai known issue dan memutakhirkan edgexfoundry ketika Irlandia dirilis.

Pasca komunikasi dengan anggota EdgeX, mereka telah memberi kami garpu: github.com/hahattan/device-sdk-go v1.4.1 dengan perbaikan di cabang Hanoi, yang menyebabkan crash ini.

Saya telah menguji perbaikan dengan menggunakan perintah ganti di go.mod kami. Itu tampaknya bekerja dengan baik.

Seperti yang telah Anda sebutkan, kami dapat menunggu hingga rilis Irlandia atau kami juga dapat mengkloning perbaikan ke repo kami hingga EdgeX merilis Irlandia.

Silakan berbagi pemikiran Anda tentang hal yang sama?
@t25kim

Terima kasih !

@sun-sharma Terima kasih telah memberi tahu kami.
Bisakah Anda memodifikasi file go.mod dengan flag replace ?
Akan lebih baik untuk menambahkan catatan bahwa itu bersifat sementara dan akan dihapus.

Apakah halaman ini membantu?
0 / 5 - 0 peringkat