forum.bitel.ru
http://forum.bitel.ru/

Null pointer
http://forum.bitel.ru/viewtopic.php?f=61&t=13077
Страница 1 из 1

Автор:  PavelGloba [ 23 окт 2018, 01:04 ]
Заголовок сообщения:  Null pointer

Используем модуль тв для смотрешки.
Периодически перестаёт работать тв аккаунтинг. При этом процесс не падает. В логах начинает спамить NP. Синхронизация со смотрёшкой из-за этого тоже перестаёт работать.
На сколько я заметил, это начинается после того, как добавляешь абоненту подписку после перерыва в несколько дней (делаем мы это пока что довольно редко)

Алгоритм такой:
Перезапускаю аккаунтинг. Всё начинает работать. Те договоры, которые не смогли синхронизироваться со смотрешкой из-за падения, успешно синхронизируются после перезапуска. Если заводить новые подписки то тоже всё работает. Так продолжается около недели. Потом, допустим, день-два новых подключений нет. Всё это время аккаунтиг пишет в лог обычные логи:

Код:
mq 10-22/10:13:14  INFO [event-proc-p-2-t-1] ContractRuntimeMap - Taked event: Event[ru.bitel.bgbilling.kernel.event.events.ContractStatusChangedTopicEvent] moduleId: 0; pluginId: no; cid: 996; scid: -1; userId: 0; timestamp: 1540192394668
mq 10-22/10:13:14  INFO [event-proc-p-2-t-1] ContractRuntimeMap - Taked event: Event[ru.bitel.bgbilling.kernel.event.events.ContractStatusChangedTopicEvent] moduleId: 0; pluginId: no; cid: 996; scid: -1; userId: 0; timestamp: 1540192394668
mq 10-22/10:13:14  INFO [event-proc-p-2-t-1] ContractRuntimeMap - Taked event: Event[ru.bitel.bgbilling.kernel.event.events.ContractStatusModifiedEvent] moduleId: 0; pluginId: no; cid: 996; scid: -1; userId: 0; timestamp: 1540192394662
mq 10-22/10:13:14  INFO [event-proc-p-2-t-1] TvAccountRuntimeMap - Caught event: Event[ru.bitel.bgbilling.kernel.event.events.ContractStatusModifiedEvent] moduleId: 0; pluginId: no; cid: 996; scid: -1; userId: 0; timestamp: 1540192394662
mq 10-22/10:13:14  INFO [event-proc-p-2-t-1] ContractRuntimeMap - Taked event: Event[ru.bitel.bgbilling.kernel.event.events.ContractStatusModifiedEvent] moduleId: 0; pluginId: no; cid: 996; scid: -1; userId: 0; timestamp: 1540192394662
mq 10-22/10:13:14  INFO [event-proc-p-2-t-1] ContractRuntimeMap - Taked event: Event[ru.bitel.bgbilling.kernel.event.events.ContractStatusModifiedEvent] moduleId: 0; pluginId: no; cid: 996; scid: -1; userId: 0; timestamp: 1540192394662
mq 10-22/10:13:14  INFO [event-proc-p-2-t-1] TvAccountRuntimeMap - Caught event: Event[ru.bitel.bgbilling.kernel.event.events.ContractStatusModifiedEvent] moduleId: 0; pluginId: no; cid: 996; scid: -1; userId: 0; timestamp: 1540192394662
mq 10-22/10:13:14  INFO [event-proc-p-2-t-1] ContractRuntimeMap - Taked event: Event[ru.bitel.bgbilling.kernel.event.events.ContractStatusModifiedEvent] moduleId: 0; pluginId: no; cid: 996; scid: -1; userId: 0; timestamp: 1540192394662
mq 10-22/10:13:15  INFO [event-proc-p-2-t-1] ContractRuntimeMap - Taked event: Event[ru.bitel.bgbilling.kernel.contract.api.common.event.ContractModifiedEvent] moduleId: 0; pluginId: no; cid: 996; scid: -1; userId: 0; timestamp: 1540192395137
mq 10-22/10:13:15  INFO [event-proc-p-2-t-1] ContractRuntimeMap - Taked event: Event[ru.bitel.bgbilling.kernel.contract.api.common.event.ContractModifiedEvent] moduleId: 0; pluginId: no; cid: 996; scid: -1; userId: 0; timestamp: 1540192395137
mq 10-22/10:18:34  INFO [event-proc-p-2-t-1] ContractRuntimeMap - Taked event: Event[ru.bitel.bgbilling.kernel.event.events.ContractStatusChangedTopicEvent] moduleId: 0; pluginId: no; cid: 541; scid: -1; userId: 0; timestamp: 1540192714078
mq 10-22/10:18:34  INFO [event-proc-p-2-t-1] ContractRuntimeMap - Taked event: Event[ru.bitel.bgbilling.kernel.event.events.ContractStatusChangedTopicEvent] moduleId: 0; pluginId: no; cid: 541; scid: -1; userId: 0; timestamp: 1540192714078


Но как только заводишь нового абонента - он начинает спамить NP:

Код:
mq 10-22/15:16:54  INFO [event-proc-p-2-t-1] ContractRuntimeMap - Taked event: Event[ru.bitel.bgbilling.kernel.contract.api.common.event.ContractModifiedEvent] moduleId: 0; pluginId: no; cid: 751; scid: -1; userId: 0; timestamp: 1540210614986
mq 10-22/15:17:05  INFO [event-proc-p-2-t-1] TvAccountRuntimeMap - Caught event: Event[ru.bitel.bgbilling.modules.tv.api.common.event.TvAccountModifiedEvent] moduleId: 9; pluginId: no; cid: 1497; scid: -1; userId: 3; timestamp: 1540210625381
mq 10-22/15:17:05  INFO [event-proc-p-2-t-1] TvAccountRuntimeMap - Adding new accountRuntime: 133
mq 10-22/15:17:05  INFO [event-proc-p-2-t-1] TvAccountRuntimeMap - Loading TvAccount from database.
mq 10-22/15:17:05  INFO [event-proc-p-2-t-1] TvAccountRuntimeMap - Adding TvAccountRuntime: 133
mq 10-22/15:17:05  INFO [event-proc-p-2-t-1] TvAccountRuntimeMap - ContractId: 1497; tvAccountId: 133
        Аккаунт 123456
        Products [] TariffModuleTreeSet []
        Device state: 0; serviceIds:
mq 10-22/15:17:05  INFO [event-proc-p-2-t-1] TvAccountRuntimeMap - Caught event: Event[ru.bitel.bgbilling.modules.tv.access.event.TvAccountDeviceStateAndOptionsModifiedEvent] moduleId: 9; pluginId: no; cid: global; scid: -1; userId: -1; deviceId: 2; tvAccountId: 133; state: 1; optionIds: ; timestamp: 1540210625948
accounting 10-22/15:17:08  INFO [tvApplication-p-3-t-2] TvAccountRuntimeMap - Adding new accountRuntime: 133
accounting 10-22/15:17:08  INFO [tvApplication-p-3-t-2] TvAccountRuntimeMap - Loading TvAccount from database.
accounting 10-22/15:17:08  INFO [tvApplication-p-3-t-2] TvAccountRuntimeMap - Adding TvAccountRuntime: 133
accounting 10-22/15:17:08  INFO [tvApplication-p-3-t-2] TvAccountRuntimeMap - ContractId: 1497; tvAccountId: 133
        Аккаунт 123456
        Products [] TariffModuleTreeSet []
        Device state: 1; serviceIds:
mq 10-22/15:17:33  INFO [event-proc-p-2-t-1] TvAccountRuntimeMap - Caught event: Event[ru.bitel.bgbilling.kernel.tariff.server.event.ContractTariffChangedEvent] moduleId: 0; pluginId: no; cid: 1497; scid: -1; userId: 0; timestamp: 1540210653463
accounting 10-22/15:17:43  INFO [accwrkr-1-p-7-t-1] EventTrackingWorker - Processed 1 inetServs for 1 ms.
mq 10-22/15:17:51  INFO [event-proc-p-2-t-1] ContractRuntimeMap - Taked event: Event[ru.bitel.bgbilling.kernel.contract.api.common.event.ContractModifiedEvent] moduleId: 0; pluginId: no; cid: 1497; scid: -1; userId: 3; timestamp: 1540210671254
mq 10-22/15:17:51  INFO [event-proc-p-2-t-1] ContractRuntimeMap - Taked event: Event[ru.bitel.bgbilling.kernel.contract.api.common.event.ContractModifiedEvent] moduleId: 0; pluginId: no; cid: 1497; scid: -1; userId: 3; timestamp: 1540210671254
accounting 10-22/15:17:53  INFO [accwrkr-1-p-7-t-1] EventTrackingWorker - Processed 1 inetServs for 2 ms.
mq 10-22/15:17:58  INFO [event-proc-p-2-t-1] ContractRuntimeMap - Taked event: Event[ru.bitel.bgbilling.kernel.contract.api.common.event.ContractModifiedEvent] moduleId: 0; pluginId: no; cid: 1497; scid: -1; userId: 3; timestamp: 1540210677931
mq 10-22/15:17:58  INFO [event-proc-p-2-t-1] ContractRuntimeMap - Taked event: Event[ru.bitel.bgbilling.kernel.contract.api.common.event.ContractModifiedEvent] moduleId: 0; pluginId: no; cid: 1497; scid: -1; userId: 3; timestamp: 1540210677931
accounting 10-22/15:18:03  INFO [accwrkr-1-p-7-t-1] EventTrackingWorker - Processed 1 inetServs for 2 ms.
mq 10-22/15:18:04  INFO [event-proc-p-2-t-1] ContractRuntimeMap - Taked event: Event[ru.bitel.bgbilling.kernel.contract.api.common.event.ContractModifiedEvent] moduleId: 0; pluginId: no; cid: 1497; scid: -1; userId: 3; timestamp: 1540210683942
mq 10-22/15:18:04  INFO [event-proc-p-2-t-1] ContractRuntimeMap - Taked event: Event[ru.bitel.bgbilling.kernel.contract.api.common.event.ContractModifiedEvent] moduleId: 0; pluginId: no; cid: 1497; scid: -1; userId: 3; timestamp: 1540210683942
mq 10-22/15:18:10  INFO [event-proc-p-2-t-1] ContractRuntimeMap - Taked event: Event[ru.bitel.bgbilling.kernel.contract.api.common.event.ContractModifiedEvent] moduleId: 0; pluginId: no; cid: 1497; scid: -1; userId: 3; timestamp: 1540210689971
mq 10-22/15:18:10  INFO [event-proc-p-2-t-1] ContractRuntimeMap - Taked event: Event[ru.bitel.bgbilling.kernel.contract.api.common.event.ContractModifiedEvent] moduleId: 0; pluginId: no; cid: 1497; scid: -1; userId: 3; timestamp: 1540210689971
accounting 10-22/15:18:13  INFO [accwrkr-1-p-7-t-1] EventTrackingWorker - Processed 1 inetServs for 2 ms.
mq 10-22/15:19:09  INFO [event-proc-p-2-t-1] TvAccountRuntimeMap - Caught event: Event[ru.bitel.bgbilling.kernel.tariff.server.event.ContractTariffChangedEvent] moduleId: 0; pluginId: no; cid: 1497; scid: -1; userId: 0; timestamp: 1540210749462
accounting 10-22/15:19:13 ERROR [accwrkr-1-p-7-t-1] WorkerTask -
java.lang.NullPointerException
        at ru.bitel.bgbilling.modules.tv.accounting.worker.TvAccountTrackingWorker.process(TvAccountTrackingWorker.java:181)
        at ru.bitel.bgbilling.modules.tv.accounting.worker.TvAccountTrackingWorker.process(TvAccountTrackingWorker.java:126)
        at ru.bitel.bgbilling.modules.tv.accounting.worker.EventTrackingWorker.process(EventTrackingWorker.java:198)
        at ru.bitel.bgbilling.modules.tv.accounting.worker.EventTrackingWorker.runImpl(EventTrackingWorker.java:158)
        at ru.bitel.common.worker.WorkerTask.run(WorkerTask.java:87)
        at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
        at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:308)
        at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:180)
        at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:294)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
        at java.lang.Thread.run(Thread.java:745)
        at ru.bitel.common.worker.WorkerThread.run(WorkerThread.java:46)
accounting 10-22/15:19:43 ERROR [accwrkr-1-p-7-t-1] WorkerTask -
java.lang.NullPointerException
        at ru.bitel.bgbilling.modules.tv.accounting.worker.TvAccountTrackingWorker.process(TvAccountTrackingWorker.java:181)
        at ru.bitel.bgbilling.modules.tv.accounting.worker.TvAccountTrackingWorker.runImpl(TvAccountTrackingWorker.java:101)
        at ru.bitel.common.worker.WorkerTask.run(WorkerTask.java:87)
        at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
        at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:308)
        at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:180)
        at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:294)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
        at java.lang.Thread.run(Thread.java:745)
        at ru.bitel.common.worker.WorkerThread.run(WorkerThread.java:46)
mq 10-22/15:20:00  INFO [event-proc-p-2-t-1] ContractRuntimeMap - Taked event: Event[ru.bitel.bgbilling.kernel.contract.api.common.event.ContractModifiedEvent] moduleId: 0; pluginId: no; cid: 1418; scid: -1; userId: 0; timestamp: 1540210800190
mq 10-22/15:20:00  INFO [event-proc-p-2-t-1] ContractRuntimeMap - Taked event: Event[ru.bitel.bgbilling.kernel.contract.api.common.event.ContractModifiedEvent] moduleId: 0; pluginId: no; cid: 1418; scid: -1; userId: 0; timestamp: 1540210800190
accounting 10-22/15:20:43 ERROR [accwrkr-1-p-7-t-1] WorkerTask -
java.lang.NullPointerException
        at ru.bitel.bgbilling.modules.tv.accounting.worker.TvAccountTrackingWorker.process(TvAccountTrackingWorker.java:181)
        at ru.bitel.bgbilling.modules.tv.accounting.worker.TvAccountTrackingWorker.runImpl(TvAccountTrackingWorker.java:101)
        at ru.bitel.common.worker.WorkerTask.run(WorkerTask.java:87)
        at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
        at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:308)
        at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:180)
        at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:294)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
        at java.lang.Thread.run(Thread.java:745)
        at ru.bitel.common.worker.WorkerThread.run(WorkerThread.java:46)


Я не исключаю возможности, что оператор заводит подписку как-то неправильно. Может быть, забывает выставить тариф. Но это не должно приводить к тому, что аккаунтинг перестаёт работать вообще.

Код:
Сервер: вер. 7.0.1409 / 03.09.2018 20:20:58
os: Linux; java: Java HotSpot(TM) 64-Bit Server VM, v.1.8.0_45
tv: вер. 7.0.302 / 05.09.2018 21:00:55

Автор:  skn [ 23 окт 2018, 13:50 ]
Заголовок сообщения:  Re: Null pointer

добавили проверку на NPE

Автор:  PavelGloba [ 23 окт 2018, 15:11 ]
Заголовок сообщения:  Re: Null pointer

Спасибо. Посмотрю - отпишусь.

Автор:  PavelGloba [ 20 дек 2018, 04:41 ]
Заголовок сообщения:  Re: Null pointer

В общем, после обновления в логах никаких ошибок не находил и проблем больше никаких не возникает. Спасибо.

Страница 1 из 1 Часовой пояс: UTC + 5 часов [ Летнее время ]
Powered by phpBB® Forum Software © phpBB Group
http://www.phpbb.com/