Difference between revisions of "User:Tbharathchandra/DevLog2020"
From BRL-CAD
(21 intermediate revisions by the same user not shown) | |||
Line 57: | Line 57: | ||
==June 6== | ==June 6== | ||
* fixed build issue | * fixed build issue | ||
+ | |||
+ | ==June 7== | ||
+ | * Added FindHiredis.cmake and added to CMakeLists.txt | ||
+ | * Fixed few typo errors. | ||
+ | |||
+ | ==June 8== | ||
+ | * Testing authentication | ||
+ | |||
+ | ==June 9== | ||
+ | * Testing command-line options | ||
+ | |||
+ | ==June 10-12== | ||
+ | * Learning about boost serialization library | ||
+ | |||
+ | ==June 13== | ||
+ | * worked on Serialization implementatio outside OpenSCAD | ||
+ | |||
+ | ==June 14== | ||
+ | * Created and placed connect and disconnect functionality in Main window and OpenSCAD. | ||
+ | |||
+ | ==June 19== | ||
+ | * Created SCADSerializations.h file to store all serialization definitions | ||
+ | * created cache_entry structs in pcache. | ||
+ | |||
+ | ==June 20== | ||
+ | * Worked with boost serialization in non-intrusive and split mode. | ||
+ | * checking it's compatibility in OpenSCAD env through small tests outside OpenSCAD. | ||
+ | |||
+ | ==June 21== | ||
+ | * Completed writing all serialization definitions | ||
+ | |||
+ | ==June 22== | ||
+ | * Completed Insert and get methods for CGAL and Geometry | ||
+ | |||
+ | ==June 23== | ||
+ | * Resolved error with header files | ||
+ | * Added Guards around cache_enry serialization definitions | ||
+ | * Made some modifications to the smartCacheInsert method and encountered a critical error. | ||
+ | |||
+ | ==June 24== | ||
+ | * Resolved problem related to serializing a pointer to derived class of boost serialization | ||
+ | * Ran 1st test on the complete project, it is partially successful | ||
+ | * Geometries are inserted perfectly into Redis but raised a segmentation fault which to be addressed. | ||
+ | |||
+ | ==June 25== | ||
+ | * Geometry cache is inserting into Redis by preview action | ||
+ | * Segmentation fault of yesterday still prevails | ||
+ | |||
+ | ==June 26== | ||
+ | * Testing has done in the case of CGAl Cache, CGAL is successfully inserting into Redis while previewing and crashes in case of Render action. | ||
+ | * Found the cause for segfault, in the process to resolve it | ||
+ | |||
+ | ==June 27== | ||
+ | * Resolved the segfault by starting the connection on render thread while rendering. no change in the case of the preview. | ||
+ | |||
+ | ==June 28== | ||
+ | * worked on crash due to lazy union | ||
+ | * identified the reason behind the crash. | ||
+ | |||
+ | ==June 29== | ||
+ | * Analyzed the options for resolving the crash | ||
+ | |||
+ | ==June 30== | ||
+ | * After discussing with mentor, we decided to continue working on the reconstruction of object from redis and try to resolve the issue in parallel. | ||
+ | |||
+ | =Phase 2= | ||
+ | |||
+ | ==July 4-8== | ||
+ | * Resolved segmentation fault related to rendering on a different thread | ||
+ | |||
+ | ==July 9-13== | ||
+ | * Resolved the crash which is happening when previewing the second script | ||
+ | |||
+ | ==July 14-16== | ||
+ | * Resolved the repeating authentication bug | ||
+ | |||
+ | ==July 17== | ||
+ | * Adding a new test app to CTest of OpenSCAD | ||
+ | |||
+ | ==July 18== | ||
+ | * Completed the python test script and added it to tests/CMakList.txt | ||
+ | * failed to run the test on local machine | ||
+ | * test failed by running on travis and other tools most probably because of lack of hiredis lib | ||
+ | |||
+ | ==July 19== | ||
+ | * fixed the problem discussed yesterday, by changing the args in add_cmd_test in tests/cmakelists.txt and changing the export path in python script. | ||
+ | * ran Travis along by starting Redis-server, macOS doesn't offer that service and no huge time difference is observed in the other two builds. | ||
+ | * need to add hiredis dependency to Travis check to complete. | ||
+ | |||
+ | ==July 20-26== | ||
+ | * placed pcachepngtest_CSG into heavy config due to variety of reasons | ||
+ | * discussed with teepee about things that can be done | ||
+ | * started by adding clear Redis cache feature under the same design=>flush caches | ||
+ | * Added a new option for openscad for logging debug messages into an external file | ||
+ | * Added another test for persistent cache which tests the cache hit behavior | ||
+ | |||
+ | =Phase 3= | ||
+ | |||
+ | ==Aug 2== | ||
+ | * Added debug-output option to openscad | ||
+ | |||
+ | ==Aug 3== | ||
+ | * added testcase using debug-output option | ||
+ | |||
+ | ==Aug 4== | ||
+ | * Added a section in WIP wikibook about persistent cache | ||
+ | |||
+ | ==Aug 5== | ||
+ | * Designed local cache feature set | ||
+ | |||
+ | ==Aug 6== | ||
+ | * Completed writing insert, get, gethash and contains methods. | ||
+ | * Resolved build issues on CI checks | ||
+ | |||
+ | ==Aug 7== | ||
+ | * Resolved issues with lcache and completed setting up it's working in GeometryEvaluator | ||
+ | * Resolved the crash issue which is arising when trying to flush cache. | ||
+ | |||
+ | ==Aug 8== | ||
+ | * Resolved the crash which occurs when lazy-union is enabled. | ||
+ | |||
+ | ==Aug 9== | ||
+ | * Added local cache to cmd line options renamed --persistent-cache option as --option with args like --option=file for enabling local cache and --option=redis,127.0.0.1,6379,foobared for enabling redis cache. | ||
+ | * encountered a seg fault | ||
+ | |||
+ | ==Aug 10== | ||
+ | * resolved the segfault crash. | ||
+ | * updated WIP in progress page. | ||
+ | |||
+ | == Aug 13-18 == | ||
+ | * In search of eviction implementation | ||
+ | |||
+ | == Aug 19 == | ||
+ | * Facing build errors with Circle CI builds which are disabled because of some reason | ||
+ | * Decided to upstream to remove the boosty dependency in platformutils | ||
+ | |||
+ | == Aug 20== | ||
+ | * Updated tests/cmakelist.txt to include the changes made to --cache option and corrected few things dropped because merging |
Latest revision as of 03:48, 20 August 2020
Coummunity Bonding Period[edit]
- Setup the Development Log
- Explore and analyze different key-value datastores.
- Discuss with Mentors and finalize the perfect datastore.
May 16[edit]
- Downloaded and installed Hiredis (v0.14.1) on my machine
- hiredis.prf is created for auto-detection of hiredis
May 17[edit]
- Exploring hiredis and redis
May 18[edit]
- Created pcache.h which contains the core methods to connect and communicate with the server.
May 19[edit]
- Written some functionality of the PCache class.
- Testing and resolving different degenerate cases in PCache.
May 20[edit]
- Added somemore functionality for PCache class.
May 21[edit]
- Testing of PCache class and added required guards ENABLE_HIREDIS
- Pushed the code into repo and results show a success.
May 22[edit]
- Understanding the layout of preference dialog.
May 23[edit]
- Created the required GUI, which takes the IP address and port number and connects to the Redis server.
- Pushed the code to the repo and checks ran successfully.
May 24-30[edit]
- Exploring Redis commands
May 31[edit]
- Added authentication functionality to PCache class
- Added required GUI in preferences to take password.
Phase 1[edit]
June 1[edit]
- Added prepending functions
- Added print function
June 2[edit]
- Experimented with the referencing style of CGALCache and GeomCache.
June 4[edit]
- PCSettings class is added
- Added command-line option to decs
June 5[edit]
- Integrated PCSettings with CLI and GUI version.
June 6[edit]
- fixed build issue
June 7[edit]
- Added FindHiredis.cmake and added to CMakeLists.txt
- Fixed few typo errors.
June 8[edit]
- Testing authentication
June 9[edit]
- Testing command-line options
June 10-12[edit]
- Learning about boost serialization library
June 13[edit]
- worked on Serialization implementatio outside OpenSCAD
June 14[edit]
- Created and placed connect and disconnect functionality in Main window and OpenSCAD.
June 19[edit]
- Created SCADSerializations.h file to store all serialization definitions
- created cache_entry structs in pcache.
June 20[edit]
- Worked with boost serialization in non-intrusive and split mode.
- checking it's compatibility in OpenSCAD env through small tests outside OpenSCAD.
June 21[edit]
- Completed writing all serialization definitions
June 22[edit]
- Completed Insert and get methods for CGAL and Geometry
June 23[edit]
- Resolved error with header files
- Added Guards around cache_enry serialization definitions
- Made some modifications to the smartCacheInsert method and encountered a critical error.
June 24[edit]
- Resolved problem related to serializing a pointer to derived class of boost serialization
- Ran 1st test on the complete project, it is partially successful
- Geometries are inserted perfectly into Redis but raised a segmentation fault which to be addressed.
June 25[edit]
- Geometry cache is inserting into Redis by preview action
- Segmentation fault of yesterday still prevails
June 26[edit]
- Testing has done in the case of CGAl Cache, CGAL is successfully inserting into Redis while previewing and crashes in case of Render action.
- Found the cause for segfault, in the process to resolve it
June 27[edit]
- Resolved the segfault by starting the connection on render thread while rendering. no change in the case of the preview.
June 28[edit]
- worked on crash due to lazy union
- identified the reason behind the crash.
June 29[edit]
- Analyzed the options for resolving the crash
June 30[edit]
- After discussing with mentor, we decided to continue working on the reconstruction of object from redis and try to resolve the issue in parallel.
Phase 2[edit]
July 4-8[edit]
- Resolved segmentation fault related to rendering on a different thread
July 9-13[edit]
- Resolved the crash which is happening when previewing the second script
July 14-16[edit]
- Resolved the repeating authentication bug
July 17[edit]
- Adding a new test app to CTest of OpenSCAD
July 18[edit]
- Completed the python test script and added it to tests/CMakList.txt
- failed to run the test on local machine
- test failed by running on travis and other tools most probably because of lack of hiredis lib
July 19[edit]
- fixed the problem discussed yesterday, by changing the args in add_cmd_test in tests/cmakelists.txt and changing the export path in python script.
- ran Travis along by starting Redis-server, macOS doesn't offer that service and no huge time difference is observed in the other two builds.
- need to add hiredis dependency to Travis check to complete.
July 20-26[edit]
- placed pcachepngtest_CSG into heavy config due to variety of reasons
- discussed with teepee about things that can be done
- started by adding clear Redis cache feature under the same design=>flush caches
- Added a new option for openscad for logging debug messages into an external file
- Added another test for persistent cache which tests the cache hit behavior
Phase 3[edit]
Aug 2[edit]
- Added debug-output option to openscad
Aug 3[edit]
- added testcase using debug-output option
Aug 4[edit]
- Added a section in WIP wikibook about persistent cache
Aug 5[edit]
- Designed local cache feature set
Aug 6[edit]
- Completed writing insert, get, gethash and contains methods.
- Resolved build issues on CI checks
Aug 7[edit]
- Resolved issues with lcache and completed setting up it's working in GeometryEvaluator
- Resolved the crash issue which is arising when trying to flush cache.
Aug 8[edit]
- Resolved the crash which occurs when lazy-union is enabled.
Aug 9[edit]
- Added local cache to cmd line options renamed --persistent-cache option as --option with args like --option=file for enabling local cache and --option=redis,127.0.0.1,6379,foobared for enabling redis cache.
- encountered a seg fault
Aug 10[edit]
- resolved the segfault crash.
- updated WIP in progress page.
Aug 13-18[edit]
- In search of eviction implementation
Aug 19[edit]
- Facing build errors with Circle CI builds which are disabled because of some reason
- Decided to upstream to remove the boosty dependency in platformutils
Aug 20[edit]
- Updated tests/cmakelist.txt to include the changes made to --cache option and corrected few things dropped because merging