irods
4.2.8
About: iRODS (the integrated Rule Oriented Data System) is a distributed data-management system for creating data grids, digital libraries, persistent archives, and real-time data systems.
![]() ![]() |
#include "rods.h"
#include "objInfo.h"
#include "dataObjInpOut.h"
#include "ruleExecSubmit.h"
#include "rcGlobalExtern.h"
#include "rsGlobalExtern.hpp"
#include "irods_file_object.hpp"
#include "irods_linked_list_iterator.hpp"
Go to the source code of this file.
Macros | |
#define | NO_GOOD_COPY 0 |
#define | HAVE_GOOD_COPY 1 |
#define | TRIM_MATCHED_RESC_INFO 0x1 |
#define | REQUE_MATCHED_RESC_INFO 0x2 |
#define | TRIM_MATCHED_OBJ_INFO 0x4 |
#define | TRIM_UNMATCHED_OBJ_INFO 0x8 |
#define | MULTI_COPIES_PER_RESC "MULTI_COPIES_PER_RESC" |
Functions | |
irods::error | validate_logical_path (const std::string &) |
irods::error | resolve_hierarchy_for_resc_from_cond_input (rsComm_t *, const std::string &, std::string &) |
int | getDataObjInfo (rsComm_t *rsComm, dataObjInp_t *dataObjInp, dataObjInfo_t **dataObjInfoHead, char *accessPerm, int ignoreCondInput) |
int | updateDataObjReplStatus (rsComm_t *rsComm, int l1descInx, int replStatus) |
int | dataObjExist (rsComm_t *rsComm, dataObjInp_t *dataObjInp) |
int | sortObjInfoForRepl (dataObjInfo_t **dataObjInfoHead, dataObjInfo_t **oldDataObjInfoHead, int deleteOldFlag, const char *resc_hier, const char *dst_resc_hier) |
int | sortObjInfoForOpen (dataObjInfo_t **dataObjInfoHead, keyValPair_t *condInput, int writeFlag) |
int | create_and_sort_data_obj_info_for_open (const std::string &resc_hier, const irods::file_object_ptr file_obj, dataObjInfo_t **data_obj_info_head) |
int | sortDataObjInfoRandom (dataObjInfo_t **dataObjInfoHead) |
int | requeDataObjInfoByResc (dataObjInfo_t **dataObjInfoHead, const char *preferedResc, int writeFlag, int topFlag) |
int | requeDataObjInfoByReplNum (dataObjInfo_t **dataObjInfoHead, int replNum) |
dataObjInfo_t * | chkCopyInResc (dataObjInfo_t *&dataObjInfoHead, const std::string &_resc_name, const char *destRescHier) |
int | initDataObjInfoQuery (dataObjInp_t *dataObjInp, genQueryInp_t *genQueryInp, int ignoreCondInput) |
int | sortObjInfo (dataObjInfo_t **dataObjInfoHead, dataObjInfo_t **dirtyArchInfo, dataObjInfo_t **dirtyCacheInfo, dataObjInfo_t **oldArchInfo, dataObjInfo_t **oldCacheInfo, dataObjInfo_t **downCurrentInfo, dataObjInfo_t **downOldInfo) |
int | chkOrphanFile (rsComm_t *rsComm, char *filePath, const char *rescName, dataObjInfo_t *dataObjInfo) |
int | chkOrphanDir (rsComm_t *rsComm, char *dirPath, const char *rescName) |
int | getNumDataObjInfo (dataObjInfo_t *dataObjInfoHead) |
int | resolveSingleReplCopy (dataObjInfo_t **dataObjInfoHead, dataObjInfo_t **oldDataObjInfoHead, const std::string &_resc_name, dataObjInfo_t **destDataObjInfo, keyValPair_t *condInput) |
int | matchDataObjInfoByCondInput (dataObjInfo_t **dataObjInfoHead, dataObjInfo_t **oldDataObjInfoHead, keyValPair_t *condInput, dataObjInfo_t **matchedDataObjInfo, dataObjInfo_t **matchedOldDataObjInfo) |
int | resolveInfoForPhymv (dataObjInfo_t **dataObjInfoHead, dataObjInfo_t **oldDataObjInfoHead, const std::string &_resc_name, keyValPair_t *condInput, int multiCopyFlag) |
int | matchAndTrimRescGrp (dataObjInfo_t **dataObjInfoHead, const std::string &_resc_name, int trimjFlag, dataObjInfo_t **trimmedDataObjInfo) |
int | resolveInfoForTrim (dataObjInfo_t **dataObjInfoHead, keyValPair_t *condInput) |
int | requeDataObjInfoByDestResc (dataObjInfo_t **dataObjInfoHead, keyValPair_t *condInput, int writeFlag, int topFlag) |
int | requeDataObjInfoBySrcResc (dataObjInfo_t **dataObjInfoHead, keyValPair_t *condInput, int writeFlag, int topFlag) |
int | getDataObjInfoIncSpecColl (rsComm_t *rsComm, dataObjInp_t *dataObjInp, dataObjInfo_t **dataObjInfo) |
int | regNewObjSize (rsComm_t *rsComm, char *objPath, int replNum, rodsLong_t newSize) |
int | getDataObjByClass (dataObjInfo_t *dataObjInfoHead, int rescClass, dataObjInfo_t **outDataObjInfo) |
irods::linked_list_iterator< dataObjInfo_t > | begin (dataObjInfo_t *_objects) noexcept |
irods::linked_list_iterator< const dataObjInfo_t > | begin (const dataObjInfo_t *_objects) noexcept |
irods::linked_list_iterator< dataObjInfo_t > | end (dataObjInfo_t *_objects) noexcept |
irods::linked_list_iterator< const dataObjInfo_t > | end (const dataObjInfo_t *_objects) noexcept |
template<typename UnaryPredicate > | |
bool | contains_replica_if (const dataObjInfo_t *_objects, UnaryPredicate &&_pred) |
bool | contains_replica (const dataObjInfo_t *_objects, const std::string &_resc_name) |
bool | contains_replica (const dataObjInfo_t *_objects, int _replica_number) |
#define HAVE_GOOD_COPY 1 |
Definition at line 25 of file dataObjOpr.hpp.
#define MULTI_COPIES_PER_RESC "MULTI_COPIES_PER_RESC" |
Definition at line 33 of file dataObjOpr.hpp.
#define NO_GOOD_COPY 0 |
Definition at line 24 of file dataObjOpr.hpp.
#define REQUE_MATCHED_RESC_INFO 0x2 |
Definition at line 29 of file dataObjOpr.hpp.
#define TRIM_MATCHED_OBJ_INFO 0x4 |
Definition at line 30 of file dataObjOpr.hpp.
#define TRIM_MATCHED_RESC_INFO 0x1 |
Definition at line 28 of file dataObjOpr.hpp.
#define TRIM_UNMATCHED_OBJ_INFO 0x8 |
Definition at line 31 of file dataObjOpr.hpp.
|
noexcept |
Definition at line 1943 of file dataObjOpr.cpp.
|
noexcept |
Definition at line 1939 of file dataObjOpr.cpp.
Referenced by contains_replica_if().
dataObjInfo_t* chkCopyInResc | ( | dataObjInfo_t *& | dataObjInfoHead, |
const std::string & | _resc_name, | ||
const char * | destRescHier | ||
) |
Definition at line 842 of file dataObjOpr.cpp.
References DataObjInfo::next, NULL, and DataObjInfo::rescHier.
Referenced by resolveSingleReplCopy().
Definition at line 1245 of file dataObjOpr.cpp.
References chkOrphanFile(), irods::experimental::administration::client::v1::exists(), LOG_ERROR, MAX_NAME_LEN, NULL, pid_age::p, rodsLog(), irods.pypyodbc::status, UNIX_FILE_OPENDIR_ERR, and UNIX_FILE_STAT_ERR.
Referenced by unbunPhyBunFile().
int chkOrphanFile | ( | rsComm_t * | rsComm, |
char * | filePath, | ||
const char * | rescName, | ||
dataObjInfo_t * | dataObjInfo | ||
) |
Definition at line 1099 of file dataObjOpr.cpp.
References addInxIval(), addInxVal(), addKeyVal(), irods::AGENT_CONN_KW(), ANONYMOUS_USER, CAT_NO_ROWS_FOUND, clearGenQueryInp(), rsComm_t::clientUser, irods::error::code(), COL_COLL_NAME, COL_D_DATA_ID, COL_D_DATA_PATH, COL_D_RESC_ID, COL_DATA_NAME, COL_DATA_REPL_NUM, GenQueryInp::condInput, DataObjInfo::dataId, irods::delete_server_property(), DISABLE_STRICT_ACL_KW, terminate_irods_processes::e, freeGenQueryOut(), getSqlResultByInx(), irods::resource_manager::hier_to_leaf_id(), KEY_NOT_FOUND, irods::resource_manager::leaf_id_to_hier(), irods::log(), LOG_ERROR, LOG_NOTICE, MAX_NAME_LEN, MAX_SQL_ROWS, GenQueryInp::maxRows, NAME_LEN, perfStat_t::nonOrphanCnt, NULL, DataObjInfo::objPath, irods::error::ok(), perfStat_t::orphanCnt, PASS, rsComm_t::perfStat, DataObjInfo::replNum, resc_mgr, DataObjInfo::rescHier, rodsLog(), rsGenQuery(), rstrcpy(), GenQueryInp::selectInp, GenQueryInp::sqlCondInp, irods.pypyodbc::status, SYS_USER_NO_PERMISSION, UNMATCHED_KEY_OR_INDEX, userInfo_t::userName, and SqlResult::value.
Referenced by bulkProcAndRegSubfile(), chkAndHandleOrphanFile(), chkOrphanDir(), cleanupBulkRegFiles(), l3FileSync(), moveMountedCollDataObj(), and regSubfile().
bool contains_replica | ( | const dataObjInfo_t * | _objects, |
const std::string & | _resc_name | ||
) |
Definition at line 1955 of file dataObjOpr.cpp.
References irods.six::b(), contains_replica_if(), terminate_irods_processes::e, and DataObjInfo::rescHier.
Referenced by resolveInfoForTrim().
bool contains_replica | ( | const dataObjInfo_t * | _objects, |
int | _replica_number | ||
) |
Definition at line 1967 of file dataObjOpr.cpp.
References contains_replica_if(), and DataObjInfo::replNum.
bool contains_replica_if | ( | const dataObjInfo_t * | _objects, |
UnaryPredicate && | _pred | ||
) |
Definition at line 135 of file dataObjOpr.hpp.
References begin(), terminate_irods_processes::e, and end().
Referenced by contains_replica().
int create_and_sort_data_obj_info_for_open | ( | const std::string & | resc_hier, |
const irods::file_object_ptr | file_obj, | ||
dataObjInfo_t ** | data_obj_info_head | ||
) |
Definition at line 610 of file dataObjOpr.cpp.
References irods::physical_object::checksum(), DataObjInfo::chksum, irods::physical_object::coll_id(), DataObjInfo::collId, irods::physical_object::create_ts(), DataObjInfo::dataComments, DataObjInfo::dataCreate, DataObjInfo::dataExpiry, DataObjInfo::dataId, DataObjInfo::dataMapId, DataObjInfo::dataMode, DataObjInfo::dataModify, DataObjInfo::dataOwnerName, DataObjInfo::dataOwnerZone, DataObjInfo::dataSize, DataObjInfo::dataType, ERROR, irods::physical_object::expiry_ts(), DataObjInfo::filePath, HIERARCHY_ERROR, irods::physical_object::id(), irods::physical_object::is_dirty(), irods::log(), LONG_NAME_LEN, irods::physical_object::map_id(), MAX_NAME_LEN, irods::physical_object::mode(), irods::physical_object::modify_ts(), irods::physical_object::name(), NAME_LEN, NULL, DataObjInfo::objPath, irods::physical_object::owner_name(), irods::physical_object::owner_zone(), irods::physical_object::path(), irods::physical_object::r_comment(), irods::physical_object::repl_num(), DataObjInfo::replNum, DataObjInfo::replStatus, irods::physical_object::resc_hier(), irods::physical_object::resc_name(), DataObjInfo::rescHier, DataObjInfo::rescName, SHORT_STR_LEN, irods::physical_object::size(), irods::physical_object::status(), DataObjInfo::statusString, SYS_INVALID_INPUT_PARAM, TIME_LEN, irods::physical_object::type_name(), irods::physical_object::version(), and DataObjInfo::version.
int dataObjExist | ( | rsComm_t * | rsComm, |
dataObjInp_t * | dataObjInp | ||
) |
|
noexcept |
Definition at line 1951 of file dataObjOpr.cpp.
|
noexcept |
Definition at line 1947 of file dataObjOpr.cpp.
Referenced by contains_replica_if().
int getDataObjByClass | ( | dataObjInfo_t * | dataObjInfoHead, |
int | rescClass, | ||
dataObjInfo_t ** | outDataObjInfo | ||
) |
int getDataObjInfo | ( | rsComm_t * | rsComm, |
dataObjInp_t * | dataObjInp, | ||
dataObjInfo_t ** | dataObjInfoHead, | ||
char * | accessPerm, | ||
int | ignoreCondInput | ||
) |
Definition at line 87 of file dataObjOpr.cpp.
References ACCESS_PERMISSION_KW, addInxIval(), addKeyVal(), CAT_NO_ROWS_FOUND, DataObjInfo::chksum, clearGenQueryInp(), rsComm_t::clientUser, irods::error::code(), COL_COLL_NAME, COL_D_COLL_ID, COL_D_COMMENTS, COL_D_CREATE_TIME, COL_D_DATA_CHECKSUM, COL_D_DATA_ID, COL_D_DATA_PATH, COL_D_DATA_STATUS, COL_D_EXPIRY, COL_D_MAP_ID, COL_D_MODIFY_TIME, COL_D_OWNER_NAME, COL_D_OWNER_ZONE, COL_D_REPL_STATUS, COL_D_RESC_HIER, COL_DATA_MODE, COL_DATA_NAME, COL_DATA_REPL_NUM, COL_DATA_SIZE, COL_DATA_TYPE_NAME, COL_DATA_VERSION, DataObjInfo::collId, DataObjInp::condInput, GenQueryInp::condInput, GenQueryInp::continueInx, GenQueryOut::continueInx, DataObjInfo::dataComments, dataCreate(), DataObjInfo::dataCreate, DataObjInfo::dataExpiry, DataObjInfo::dataId, DataObjInfo::dataMapId, DataObjInfo::dataMode, DataObjInfo::dataModify, DataObjInfo::dataOwnerName, DataObjInfo::dataOwnerZone, DataObjInfo::dataSize, DataObjInfo::dataType, DataObjInfo::filePath, freeGenQueryOut(), getSqlResultByInx(), getValByKey(), getWriteFlag(), irods::resource_manager::hier_to_leaf_id(), initDataObjInfoQuery(), SqlResult::len, irods::log(), LOG_NOTICE, LONG_NAME_LEN, MAX_NAME_LEN, MAX_SQL_ROWS, GenQueryInp::maxRows, NAME_LEN, DataObjInfo::next, NULL, DataObjInfo::objPath, irods::error::ok(), DataObjInp::openFlags, deploy_schemas_locally::parser, PASS, queDataObjInfo(), DataObjInfo::replNum, DataObjInfo::replStatus, resc_mgr, DataObjInfo::rescHier, DataObjInfo::rescId, DataObjInfo::rescName, RODS_ZONE_CLIENT_KW, rodsLog(), userInfo_t::rodsZone, GenQueryOut::rowCnt, rsGenQuery(), rstrcpy(), GenQueryInp::selectInp, SHORT_STR_LEN, irods.pypyodbc::status, DataObjInfo::statusString, SYS_INTERNAL_NULL_INPUT_ERR, TICKET_KW, TIME_LEN, UNMATCHED_KEY_OR_INDEX, USER_NAME_CLIENT_KW, userInfo_t::userName, SqlResult::value, DataObjInfo::version, irods.pypyodbc::version, and DataObjInfo::writeFlag.
Referenced by _rsDataObjRename(), _rsDataObjRepl(), filePathRegRepl(), getDataObjInfoIncSpecColl(), regUnbunPhySubfiles(), irods::resolve_resource_hierarchy(), resolveDataObjReplStatus(), rsDataObjPhymv(), rsDataObjTrim(), rsExecCmd(), rsMvDataObjToTrash(), specCollSubStat(), stageBundledData(), and unbunAndStageBunfileObj().
int getDataObjInfoIncSpecColl | ( | rsComm_t * | rsComm, |
dataObjInp_t * | dataObjInp, | ||
dataObjInfo_t ** | dataObjInfo | ||
) |
Definition at line 1767 of file dataObjOpr.cpp.
References ACCESS_MODIFY_OBJECT, ACCESS_READ_OBJECT, ADMIN_RMTRASH_KW, authInfo_t::authFlag, userInfo_t::authInfo, rsComm_t::clientUser, SpecColl::collClass, DataObjInp::condInput, freeDataObjInfo(), getDataObjInfo(), getStructFileType(), getValByKey(), getWriteFlag(), LINKED_COLL, LOCAL_PRIV_USER_AUTH, LOG_NOTICE, MAX_NAME_LEN, NO_SPEC_COLL, NO_THREADING, NULL, DataObjInp::numThreads, DataObjInp::objPath, DataObjInp::openFlags, DataObjInp::oprType, rsComm_t::proxyUser, PUBLIC_USER_AUTH, READ_COLL_PERM, REPLICATE_OPR, resolvePathInSpecColl(), rodsLog(), rstrcpy(), DataObjInp::specColl, irods.pypyodbc::status, SYS_NO_API_PRIV, SYS_SPEC_COLL_OBJ_NOT_EXIST, userInfo_t::userName, and WRITE_COLL_PERM.
Referenced by _call_file_modified_for_modification(), _rsDataObjChksum(), _rsDataObjUnlink(), _rsModDataObjMeta(), irods::file_object_factory(), irods::resolve_resource_hierarchy(), rsDataObjTruncate(), rsDataObjUnlink(), rsGetRemoteZoneResc(), and structFileReg().
int getNumDataObjInfo | ( | dataObjInfo_t * | dataObjInfoHead | ) |
Definition at line 688 of file dataObjOpr.cpp.
References DataObjInfo::next, and NULL.
Referenced by sortDataObjInfoRandom().
int initDataObjInfoQuery | ( | dataObjInp_t * | dataObjInp, |
genQueryInp_t * | genQueryInp, | ||
int | ignoreCondInput | ||
) |
Definition at line 1044 of file dataObjOpr.cpp.
References addInxVal(), addKeyVal(), ADMIN_KW, COL_COLL_NAME, COL_D_DATA_ID, COL_DATA_NAME, COL_DATA_REPL_NUM, DataObjInp::condInput, GenQueryInp::condInput, getValByKey(), LOG_NOTICE, MAX_NAME_LEN, NAME_LEN, NULL, DataObjInp::objPath, QUERY_BY_DATA_ID_KW, REPL_NUM_KW, rodsLog(), splitPathByKey(), GenQueryInp::sqlCondInp, and irods.pypyodbc::status.
Referenced by getDataObjInfo().
int matchAndTrimRescGrp | ( | dataObjInfo_t ** | dataObjInfoHead, |
const std::string & | _resc_name, | ||
int | trimjFlag, | ||
dataObjInfo_t ** | trimmedDataObjInfo | ||
) |
Definition at line 883 of file dataObjOpr.cpp.
References DataObjInfo::next, NULL, queDataObjInfo(), irods::hierarchy_parser::resc_in_hier(), DataObjInfo::rescHier, irods::hierarchy_parser::set_string(), and TRIM_MATCHED_OBJ_INFO.
Referenced by resolveInfoForPhymv(), and resolveSingleReplCopy().
int matchDataObjInfoByCondInput | ( | dataObjInfo_t ** | dataObjInfoHead, |
dataObjInfo_t ** | oldDataObjInfoHead, | ||
keyValPair_t * | condInput, | ||
dataObjInfo_t ** | matchedDataObjInfo, | ||
dataObjInfo_t ** | matchedOldDataObjInfo | ||
) |
Definition at line 1420 of file dataObjOpr.cpp.
References CAT_NO_ROWS_FOUND, DEST_RESC_HIER_STR_KW, getValByKey(), LOG_ERROR, DataObjInfo::next, NULL, queDataObjInfo(), REPL_NUM_KW, DataObjInfo::replNum, RESC_HIER_STR_KW, RESC_NAME_KW, rescCond, DataObjInfo::rescHier, rodsLog(), and USER__NULL_INPUT_ERR.
Referenced by resolveInfoForPhymv(), resolveInfoForTrim(), and resolveSingleReplCopy().
int regNewObjSize | ( | rsComm_t * | rsComm, |
char * | objPath, | ||
int | replNum, | ||
rodsLong_t | newSize | ||
) |
Definition at line 1847 of file dataObjOpr.cpp.
References addKeyVal(), DATA_SIZE_KW, modDataObjMeta_t::dataObjInfo, LOG_ERROR, MAX_NAME_LEN, NULL, DataObjInfo::objPath, modDataObjMeta_t::regParam, DataObjInfo::replNum, rodsLog(), rsModDataObjMeta(), rstrcpy(), irods.pypyodbc::status, and USER__NULL_INPUT_ERR.
Referenced by sync_cache_dir_to_tar_file().
int requeDataObjInfoByDestResc | ( | dataObjInfo_t ** | dataObjInfoHead, |
keyValPair_t * | condInput, | ||
int | writeFlag, | ||
int | topFlag | ||
) |
Definition at line 1752 of file dataObjOpr.cpp.
References BACKUP_RESC_NAME_KW, DEF_RESC_NAME_KW, DEST_RESC_NAME_KW, getValByKey(), NULL, requeDataObjInfoByResc(), and irods.pypyodbc::status.
Referenced by procDataObjOpenForWrite().
int requeDataObjInfoByReplNum | ( | dataObjInfo_t ** | dataObjInfoHead, |
int | replNum | ||
) |
Definition at line 806 of file dataObjOpr.cpp.
References DataObjInfo::next, NULL, queDataObjInfo(), DataObjInfo::replNum, and irods.pypyodbc::status.
int requeDataObjInfoByResc | ( | dataObjInfo_t ** | dataObjInfoHead, |
const char * | preferedResc, | ||
int | writeFlag, | ||
int | topFlag | ||
) |
Definition at line 760 of file dataObjOpr.cpp.
References DataObjInfo::next, NULL, queDataObjInfo(), DataObjInfo::replStatus, DataObjInfo::rescHier, and irods.pypyodbc::status.
Referenced by msiSetDataObjAvoidResc(), msiSetDataObjPreferredResc(), regUnbunPhySubfiles(), requeDataObjInfoByDestResc(), and specCollSubStat().
int requeDataObjInfoBySrcResc | ( | dataObjInfo_t ** | dataObjInfoHead, |
keyValPair_t * | condInput, | ||
int | writeFlag, | ||
int | topFlag | ||
) |
irods::error resolve_hierarchy_for_resc_from_cond_input | ( | rsComm_t * | , |
const std::string & | , | ||
std::string & | |||
) |
Definition at line 1880 of file dataObjOpr.cpp.
References ERROR, irods::resource_manager::get_hier_to_root_for_resc(), HIERARCHY_ERROR, irods::error::ok(), deploy_schemas_locally::parser, PASS, resc_mgr, irods::resource_manager::resolve(), and SUCCESS.
Referenced by rsDataObjPhymv().
int resolveInfoForPhymv | ( | dataObjInfo_t ** | dataObjInfoHead, |
dataObjInfo_t ** | oldDataObjInfoHead, | ||
const std::string & | _resc_name, | ||
keyValPair_t * | condInput, | ||
int | multiCopyFlag | ||
) |
Definition at line 1364 of file dataObjOpr.cpp.
References CAT_NO_ROWS_FOUND, LOG_ERROR, matchAndTrimRescGrp(), matchDataObjInfoByCondInput(), NULL, REQUE_MATCHED_RESC_INFO, rodsLog(), irods.pypyodbc::status, SYS_COPY_ALREADY_IN_RESC, and TRIM_MATCHED_OBJ_INFO.
Referenced by rsDataObjPhymv().
int resolveInfoForTrim | ( | dataObjInfo_t ** | dataObjInfoHead, |
keyValPair_t * | condInput | ||
) |
Definition at line 1563 of file dataObjOpr.cpp.
References CAT_NO_ROWS_FOUND, contains_replica(), COPIES_KW, DEF_MIN_COPY_CNT, terminate_irods_processes::e, freeAllDataObjInfo(), freeDataObjInfo(), getDataObjInfoCnt(), getValByKey(), LOG_NOTICE, matchDataObjInfoByCondInput(), DataObjInfo::next, NULL, queDataObjInfo(), REPL_NUM_KW, rodsLog(), sortObjInfoForRepl(), irods.pypyodbc::status, USER_INCOMPATIBLE_PARAMS, and USER_INVALID_REPLICA_INPUT.
Referenced by rsDataObjTrim().
int resolveSingleReplCopy | ( | dataObjInfo_t ** | dataObjInfoHead, |
dataObjInfo_t ** | oldDataObjInfoHead, | ||
const std::string & | _resc_name, | ||
dataObjInfo_t ** | destDataObjInfo, | ||
keyValPair_t * | condInput | ||
) |
Definition at line 1301 of file dataObjOpr.cpp.
References ALL_KW, chkCopyInResc(), dequeDataObjInfo(), DEST_RESC_HIER_STR_KW, getValByKey(), HAVE_GOOD_COPY, matchAndTrimRescGrp(), matchDataObjInfoByCondInput(), NO_GOOD_COPY, NULL, queDataObjInfo(), irods.pypyodbc::status, TRIM_MATCHED_RESC_INFO, and TRIM_UNMATCHED_OBJ_INFO.
Referenced by _rsDataObjRepl().
int sortDataObjInfoRandom | ( | dataObjInfo_t ** | dataObjInfoHead | ) |
Definition at line 701 of file dataObjOpr.cpp.
References getNumDataObjInfo(), LOG_NOTICE, DataObjInfo::next, NULL, queDataObjInfo(), and rodsLog().
Referenced by msiSortDataObj().
int sortObjInfo | ( | dataObjInfo_t ** | dataObjInfoHead, |
dataObjInfo_t ** | dirtyArchInfo, | ||
dataObjInfo_t ** | dirtyCacheInfo, | ||
dataObjInfo_t ** | oldArchInfo, | ||
dataObjInfo_t ** | oldCacheInfo, | ||
dataObjInfo_t ** | downCurrentInfo, | ||
dataObjInfo_t ** | downOldInfo | ||
) |
int sortObjInfoForOpen | ( | dataObjInfo_t ** | dataObjInfoHead, |
keyValPair_t * | condInput, | ||
int | writeFlag | ||
) |
Definition at line 548 of file dataObjOpr.cpp.
References ERROR, freeAllDataObjInfo(), getValByKey(), HIERARCHY_ERROR, irods::log(), DataObjInfo::next, NULL, RESC_HIER_STR_KW, and SYS_INVALID_INPUT_PARAM.
Referenced by _rsDataObjChksum(), _rsDataObjOpen(), _unbunAndStageBunfileObj(), filePathRegRepl(), rsExecCmd(), rsGetRemoteZoneResc(), and specCollSubStat().
int sortObjInfoForRepl | ( | dataObjInfo_t ** | dataObjInfoHead, |
dataObjInfo_t ** | oldDataObjInfoHead, | ||
int | deleteOldFlag, | ||
const char * | resc_hier, | ||
const char * | dst_resc_hier | ||
) |
Definition at line 945 of file dataObjOpr.cpp.
References freeAllDataObjInfo(), irods::is_hier_live(), LOG_ERROR, DataObjInfo::next, NULL, queDataObjInfo(), DataObjInfo::rescHier, rodsLog(), sortObjInfo(), SYS_INVALID_INPUT_PARAM, and SYS_RESC_IS_DOWN.
Referenced by _rsDataObjRepl(), and resolveInfoForTrim().
irods::error validate_logical_path | ( | const std::string & | _path | ) |
Definition at line 47 of file dataObjOpr.cpp.
References ERROR, zoneInfo::next, SUCCESS, SYS_INVALID_INPUT_PARAM, manual_cleanup::zone_name, ZoneInfoHead, and zoneInfo::zoneName.
Referenced by rsCollCreate(), and rsDataObjCreate().