mirror of
https://github.com/open-metadata/OpenMetadata.git
synced 2026-01-07 04:56:54 +00:00
Fix - 19359 : Get only non-deleted entities in export (#19396)
This commit is contained in:
parent
7d21a8295b
commit
b8ea105395
@ -341,6 +341,14 @@ public interface EntityDAO<T extends EntityInterface> {
|
||||
@Bind("startHash") String startHash,
|
||||
@Bind("endHash") String endHash);
|
||||
|
||||
@SqlQuery("SELECT json FROM <table> <cond> AND <nameHashColumn> BETWEEN :startHash AND :endHash ")
|
||||
List<String> listAll(
|
||||
@Define("table") String table,
|
||||
@Define("cond") String cond,
|
||||
@Define("nameHashColumn") String nameHashColumn,
|
||||
@Bind("startHash") String startHash,
|
||||
@Bind("endHash") String endHash);
|
||||
|
||||
@SqlQuery("SELECT json FROM <table> LIMIT :limit OFFSET :offset")
|
||||
List<String> listAfterWithOffset(
|
||||
@Define("table") String table, @Bind("limit") int limit, @Bind("offset") int offset);
|
||||
@ -499,6 +507,11 @@ public interface EntityDAO<T extends EntityInterface> {
|
||||
return listAll(getTableName(), getNameHashColumn(), startHash, endHash);
|
||||
}
|
||||
|
||||
default List<String> listAll(String startHash, String endHash, ListFilter filter) {
|
||||
// Quoted name is stored in fullyQualifiedName column and not in the name column
|
||||
return listAll(getTableName(), filter.getCondition(), getNameHashColumn(), startHash, endHash);
|
||||
}
|
||||
|
||||
default List<String> listAfterWithOffset(int limit, int offset) {
|
||||
// No ordering
|
||||
return listAfterWithOffset(getTableName(), limit, offset);
|
||||
|
||||
@ -700,7 +700,8 @@ public abstract class EntityRepository<T extends EntityInterface> {
|
||||
}
|
||||
|
||||
public final List<T> listAllForCSV(Fields fields, String parentFqn) {
|
||||
List<String> jsons = listAllByParentFqn(parentFqn);
|
||||
ListFilter filter = new ListFilter(Include.NON_DELETED);
|
||||
List<String> jsons = listAllByParentFqn(parentFqn, filter);
|
||||
List<T> entities = new ArrayList<>();
|
||||
setFieldsInBulk(jsons, fields, entities);
|
||||
return entities;
|
||||
@ -725,6 +726,13 @@ public abstract class EntityRepository<T extends EntityInterface> {
|
||||
return dao.listAll(startHash, endHash);
|
||||
}
|
||||
|
||||
public List<String> listAllByParentFqn(String parentFqn, ListFilter filter) {
|
||||
String fqnPrefixHash = FullyQualifiedName.buildHash(parentFqn);
|
||||
String startHash = fqnPrefixHash + ".00000000000000000000000000000000";
|
||||
String endHash = fqnPrefixHash + ".ffffffffffffffffffffffffffffffff";
|
||||
return dao.listAll(startHash, endHash, filter);
|
||||
}
|
||||
|
||||
public ResultList<T> listAfter(
|
||||
UriInfo uriInfo, Fields fields, ListFilter filter, int limitParam, String after) {
|
||||
int total = dao.listCount(filter);
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user