Enhance Non-Root User Support and Improve README and Installation Scripts #3
      
        
          +94
        
        
          −30
        
        
          
        
      
    
  
  Add this suggestion to a batch that can be applied as a single commit.
  This suggestion is invalid because no changes were made to the code.
  Suggestions cannot be applied while the pull request is closed.
  Suggestions cannot be applied while viewing a subset of changes.
  Only one suggestion per line can be applied in a batch.
  Add this suggestion to a batch that can be applied as a single commit.
  Applying suggestions on deleted lines is not supported.
  You must change the existing code in this line in order to create a valid suggestion.
  Outdated suggestions cannot be applied.
  This suggestion has been applied or marked resolved.
  Suggestions cannot be applied from pending reviews.
  Suggestions cannot be applied on multi-line comments.
  Suggestions cannot be applied while the pull request is queued to merge.
  Suggestion cannot be applied right now. Please check back later.
  
    
  
    
Description
This pull request enhances the support for non-root users in the installation process of the GaussDB driver and Wagtail integration. It updates the
README.md,wagtail_README.md, andinstall_gaussdb_driver.shto ensure compatibility with non-root users by adjusting file permissions, environment configurations, and dynamic link library paths. Additionally, it introduces a backup of thecompiler.pyfile for the GaussDB Django integration, addressing specific database operations and JSON handling improvements.The changes aim to improve usability, ensure idempotent script execution, and provide clearer documentation for setting up the environment and running tests.
Changes Made
gaussdb pqto support non-root user (django) setup.stable/5.2.xinstead ofstable-5.2.xfor consistency.wagtailuser./$HOME/django_work).LD_LIBRARY_PATHto use user-specific paths (/$HOME/GaussDB_driver_lib).first_published_aterrors.RemoveConstraintlogic in Wagtail migrations.sudorequirements for file operations where possible.~/.bashrcand/etc/ld.so.conf.d/$(whoami).conf.--no-same-ownerintarextraction to avoid permission issues for non-root users.libpqin the user-specific library directory.compiler.pyfile with custom SQL compilation logic for GaussDB.JSONArray,JSONObject, and key transforms.HasKey,HasKeys, andHasAnyKeysoperations.Testing
install_gaussdb_driver.shscript on HCE, CentOS (Hce2), Euler, and Kylin systems as a non-root user.README.mdandwagtail_README.mdto ensure thedjangoandwagtailusers can set up the environment without root privileges.[X]status.GaussDBSQLCompilerby running queries involvingJSONArray,JSONObject, and key transforms, ensuring correct SQL generation.LD_LIBRARY_PATHis correctly set in~/.bashrcand thatldconfigupdates work for non-root users.DJANGO_VERSION=stable/5.2.x python run_testing_worker.pyand confirmed all tests pass.