support loading the full CDR graph, featuring all relations:
-cdr_groups
-cdr_tags
-cdr_mos
-cdr_status
-cdr_relations
-cdr_presentity
-cdr_cash_balances
-cdr_time_balances
aside various fixes, NGCP::BulkProcessor::Closure is introduced,
which provides uniform code execution:
-perl code (from YAML)
-perl code (from string)
-javascript (from string)
an identical symbol table is exposed to either
language env, including the SQL connector api.
Change-Id: If10422df33d996fb6a6a6b53d0ead28ea1cef755
The variable from the main space gets declared too late when we want to
initialize the variable in the module. Instead switch to use a function
that gets called on demand, which will have the available value at that
time. This removes the need to declare $VERSION in a BEGIN section, as
that is error-prone and easy to forget for new code.
Change-Id: I613698169dddd6d7ccf52b16a0ee9994e84b3543
This should make it easier to see the application version in contrast to
the system modules version. We initialize this at build time from the
package version, and fallback to the module version if the application
has no usable version.
Change-Id: I4b4e1a926aea517b2b3b46261794e187af0c9865
The latter does not support YAML 1.1, nor many parts of the
specification. Use the more compliant implementation, in addition to try
to converge to a single one, so that we do not get serialization delta
surprises.
Change-Id: Ia3f6808b9bb84afb224cc29040964eefe07bf118
+subscriber provisioning via db:
+delta handling
+create billing subscriber
+create provisioning subscriber
+create/update billing voip_number
+create cli preference
+update billing subscriber
+create voip_dbalias
+create allowed clis preference
+release other subscriber's voip numbers
+delete obsolete dbalieses
+delete obsolete allowed_clis
+create kamailio voicemail user
+create account_id preference
+create cc preference
+check config parameters (billing profile of same reseller..)
+subscriber and contract termination via api
+reprovisioning use-case (upon changed password):
-terminate subscriber
-terminate contract
-create contact, contract, subscriber as normal
+log successful provisions
+limit to imported batch with --batch
+bulk write subscriber preferences directly to db
+barring profile to adm_ncos_ID preference
+peer_aut_* preferences: init, switchover, clear modes
+bulk write via rest-api:
+call forwards from features_define.cfg
+bulk create lnp_numbers
+checks, delta detection for lnp carriers
+changed from txn per record (42min) to txn per block (3min)
+tuning sqlite params to prevent db lock error
with multithreading
+workaround for
https://rt.cpan.org/Public/Bug/Display.html?id=102791
+include .pl and .cfg file types to be installed by the
package
+fixup to skip '0' usernames with --skip-errors
+check for minimum password length
+block rollback issue
+import txns only, stmt was not "finished"
+fix db_do "E0E" return value
+disable multithreading when perldebug
+warning counter (--skip-errors only)
+fixed locking issue
+make the --run=<db-prefix> option work to use
different import slite db's
Change-Id: I82d27b593b1d5194331c1559b022cf677e232550
+possibility to load ngcp conf files
+db connectivity must be set up explicitly for now..
+start implementing subscriber creation
+main record iteration loop, only reading the dump:
single thread: ~10min
2 threads: ~5 min
4 threads: ~3.5 min
+"check" task
+rest-api requests
+collection processing
+multithreaded processing
+rest item object prototype
Change-Id: I8ee12037b863f878101e53d69b6ae2b44a96780b
+import LNP_Define.cfg
+workingdir folder for rollback logs
+cleanup task
+chained task execution
+dry mode for import
+refactoring txn demaraction for rowblock
db operations
+take out "lock table" impl completely,
too dangerous
+take out DateTime::Format::Excel dependency
for now
+allow '#' comments in Subscriber_Define.cfg
and Lnp_Define.cfg
+check for import sequence
+referential integrity checks for Subscriber_Define.cfg
+task summary messages / rowcounts
+exclude and exclude exception number patterns
for Subscriber_Define.cfg
+ignore_unique options
Change-Id: If1f5094e15828633e212b1a8d651c97816c388b3
+setting to drop duplicate setoptionitems in
Feature_Define.cfg
+adjust Feature_Define.cfg threads vs block size
settings to arrange with a low sqlite busy_timeout
+Subscriber_Define.cfg importer
+resolve garbage collector problems with
log4perl
+refactoring to conform with perl module
lib/folder structure for installation
-runs again
Change-Id: I1821cc0085086684c3c1415be4c262453509045a