.. _release_notes_v2.1.x: ==================== v2.1.x Release Notes ==================== Platform Changes ---------------- Peek Worker ``````````` We've experienced issues with the Celery library that Peek uses for distributed processing. The issue observed is Redis closing client connections due to a Pub/Sub buffer overflow. This is believed to be due to Celery not unsubscribing from events properly, however investigations showed that the result keys are being cleaned up in Redis. We're not sure what the fix is, Hence the passive language of this paragraph. What we have done is improved the txCelery-Py located at ``_ : * Task create and result capture are performed in the same thread. * Tasks are automatically retried if they fail with a redis connection error. * Performance has been greatly reduced by staying in the thread and adding a timeout in the thread. There was a significant overhead in Twisted from entering and exiting threads. These changes actually all applied to the Peek Server, but they were for distributed tasks. Plugin Changes -------------- Nil Deployment Changes ------------------ Linux Deployment ```````````````` Nil macOS Deployment ```````````````` Nil iOS Deployment `````````````` .. note:: Peek v2.0.x does not have support for iOS, this will be updated in a future release. We're going to Ionics Capacitor framework to create a full hybrid app. Windows Deployment `````````````````` Nil. .. note:: The windows deployment will change to use Windows Subsystem for Linux in a future release. Migration Steps ---------------- Follow the following migration steps to rebuild the data that has changed in this update. Stop Peek ````````` Start the migration tasks with Peek stopped. On Linux this can be done with :: # Stop Peek sudo true sudo systemctl stop peek_agent_service sudo systemctl stop peek_office_service sudo systemctl stop peek_worker_service sudo systemctl stop peek_logic_service Clear Redis and RabbitMQ Queues ``````````````````````````````` Run the following commands to clear any queues :: # Purge any outstanding results from the redis task result store sudo redis-cli flushall # Purge the RabbitMQ Task Queue sudo rabbitmqctl purge_queue celery Restart Peek ```````````` Restart all Peek services :: sudo true sudo systemctl start peek_logic_service sudo systemctl start peek_worker_service sudo systemctl start peek_agent_service sudo systemctl start peek_office_service v2.1.7 Issues Log ----------------- This release was used to test Synertys new CI-CD builds. v2.1.6 Issues Log ----------------- This release was used to test Synertys new CI-CD builds. v2.1.5 Issues Log ----------------- Bug ``` * [PEEK-514] - Peek runs out of memory and celery connections die * [PEEK-525] - Peek Worker chews all ram and crashes * [PEEK-528] - Running the Peek Agent causing netservd errors on the connected PowerOn Server: * [PEEK-531] - Add settings for max XXX per child settings Improvement ``````````` * [PEEK-532] - Update deploy_platform_xxxx.sh/ps1 to deploy_release_xxxx.sh/ps and include installing the plugins v2.1.4 Issues Log ----------------- This release was used to test Synertys new CI-CD builds. v2.1.3 Issues Log ----------------- This release was used to test Synertys new CI-CD builds. v2.1.2 Issues Log ----------------- Bug ``` * [PEEK-494] - PowerOn Diagram Loader - RpcForAgentDispImport.storeStateInfoTuple unique constraint violation * [PEEK-499] - Field crews using Peek have null token issues on iOS Safari * [PEEK-500] - TupleStorageIndexedDbService saveTuplesEncoded never resolves promise * [PEEK-503] - Allow auto enroll - remove device register * [PEEK-506] - Alphabetically order Symbol Selection * [PEEK-512] - txcelery local variable 'async_result' referenced before assignment * [PEEK-513] - VortexJS - IndexedDB OfflineTupleActonService throws an error every check * [PEEK-514] - Peek runs out of memory and celery connections die. * [PEEK-516] - NAR ID including user and date incorrect in E-mail. Improvement ``````````` * [PEEK-493] - Peek Platform - Add stop_peek.sh script * [PEEK-508] - Remove default text from placed symbols. v2.1.1 Issues Log ----------------- Bug ``` * [PEEK-456] - Core User - Fix user title constraint for users logging in from two ADs with different username * [PEEK-482] - Diagram Edit - Order the edit branches list in descending order. * [PEEK-483] - Diagram Edit - Set a minimum width for the Ant.Design dropdowns in the shape properties. * [PEEK-488] - Queue Compilers - Fail to retry failing task, they wait indefinitely * [PEEK-489] - Peek Platform - Twisted thread count is far too small. * [PEEK-490] - Queue Compilers - Use too much CPU when not doing anything but waiting * [PEEK-491] - Peek server keeps crashing with redis pub/sub buffer overflows. * [PEEK-492] - PoN Diagram Loader - Too many concurrent SSH connections during load causes SSH rate limiting v2.1.0 Issues Log ----------------- New Feature ``````````` * [PEEK-467] - Diagram Edit - Insert Edge components/templates/symbols Improvement ``````````` * [PEEK-466] - Diagram Edit - Edit placed component text Bug ``` * [PEEK-320] - ENMAC Graph DB Loader - Loader continually reimports trace configs * [PEEK-457] - Core User / Device - User login sticks on login screen * [PEEK-462] - Core Login - login screen hangs after selecting the login button * [PEEK-463] - ENMAC Switching - program details not shown sequentially * [PEEK-464] - Diagram Edit - Deleting existing display items doesn't work * [PEEK-465] - Diagram Edit - Creating text doesn't popup shape properties * [PEEK-468] - ENMAC SOAP - SOAP isn't compatible with PowerOn Advantage * [PEEK-469] - Field Switching - Field confirm for WEB doesn't work - Time date is out of range * [PEEK-470] - ENMAC SOAP - Datetimes now seem to be double localised * [PEEK-473] - All Loaders - Workers failing all their retries can end up with queue items in limbo * [PEEK-474] - Diagram - Locating on key only (no coord set), will fail * [PEEK-475] - ENMAC Equipment Loader - Loader no longer loads conductors * [PEEK-476] - Worker - Fix retry issues with redis connections * [PEEK-477] - Queue Compilers - Ensure a chunk isn't compiled twice in paralleled * [PEEK-478] - Loader Plugins - Fix worker retry/complete logging messages * [PEEK-479] - Diagram - Improve LiveDB item create / poll sequence * [PEEK-480] - Diagram - Force Lookup imports to be run sequentially * [PEEK-481] - VortexPY - Fix reporting of blocking endpoints