Skip to content

ATLAS-5059: add support for rdbms backend and audit repository - #405

Merged
mneethiraj merged 11 commits into
apache:masterfrom
mneethiraj:ATLAS-5059
Sep 14, 2025
Merged

ATLAS-5059: add support for rdbms backend and audit repository#405
mneethiraj merged 11 commits into
apache:masterfrom
mneethiraj:ATLAS-5059

Conversation

@mneethiraj

Copy link
Copy Markdown
Contributor

What changes were proposed in this pull request?

enhancements to support using Postgres as the backend store for JanusGraph and entity-audit, replacing HBase

How was this patch tested?

starts up successfully with configuration set to use Postgres as the backend storage
successfully processes notifications, which stores the data in Postgres
successfully serve search APIs

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This PR adds comprehensive support for using Postgres as the RDBMS backend for JanusGraph storage and entity-audit repository, replacing HBase with a relational database solution.

  • Implementation of RDBMS-based storage layer with JPA/PostgreSQL integration
  • Addition of unique key handler for RDBMS backend to maintain data consistency
  • Extension of entity audit repository to support RDBMS storage instead of HBase
  • Docker configuration updates to support both HBase and Postgres deployment options

Reviewed Changes

Copilot reviewed 54 out of 54 changed files in this pull request and generated 6 comments.

Show a summary per file
File Description
AtlasGraphUtilsV2.java Integrates unique key handler for RDBMS property management
DeleteHandlerV1.java Adds unique key cleanup during graph element deletion
GraphBackedSearchIndexer.java Implements unique index key tracking and RDBMS-specific handling
RdbmsBasedAuditRepository.java New audit repository implementation using RDBMS instead of HBase
janusgraph-rdbms module Complete new module providing JanusGraph RDBMS backend implementation
Docker configurations Updated to support both HBase and Postgres backend deployment options
Comments suppressed due to low confidence (2)

repository/src/main/java/org/apache/atlas/repository/store/graph/v1/DeleteHandlerV1.java:52

  • The method calls uniqueKeyHandler.removeUniqueKey with incorrect parameter order. The method signature expects (keyName, value, elementId, isVertex) but it's being called with (elementId, keyName, value) at line 57.
import org.apache.atlas.type.AtlasType;

repository/src/main/java/org/apache/atlas/repository/store/graph/v1/DeleteHandlerV1.java:84

  • The method calls uniqueKeyHandler.removeTypeUniqueKey with incorrect parameter order. The method signature expects (typeName, keyName, value, elementId, isVertex) but it's being called with (elementId, typeName, keyName, value) based on the pattern seen in RdbmsUniqueKeyHandler.
import static org.apache.atlas.repository.Constants.CLASSIFICATION_NAME_DELIMITER;


@Override
public Set<String> getEntitiesWithTagChanges(long fromTimestamp, long toTimestamp) throws AtlasBaseException {
// TODO:

Copilot AI Jul 19, 2025

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Method getEntitiesWithTagChanges contains only a TODO comment and returns an empty set. This incomplete implementation may cause issues if this functionality is required by the audit system.

Copilot uses AI. Check for mistakes.
@mneethiraj
mneethiraj merged commit 0c5d667 into apache:master Sep 14, 2025
1 check passed
mneethiraj added a commit that referenced this pull request Sep 14, 2025
@mneethiraj
mneethiraj deleted the ATLAS-5059 branch February 6, 2026 07:10
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants