irods / irods_rule_engine_plugin_logical_quotas

BSD 3-Clause "New" or "Revised" License
1 stars 9 forks source link

Logical Quotas Policy: Insufficient privileges #38

Closed EPNSED closed 3 years ago

EPNSED commented 3 years ago

We are setting up a new irods instance (v. 4.3.0) Setup seems to be working, however, when we enable logical quotas we are getting "Logical Quotas Policy: Insufficient privileges" when we try to use iput command

remote addresses: 10.245.10.202 ERROR: putUtil: put error for /arcticZone/home/neranjan/test6.txt, status = -308000 status = -308000 USER_PACKSTRUCT_INPUT_ERR

The above command resulted in the following error in the log files

  "log_category": "rule_engine",
  "log_facility": "local0",
  "log_level": "error",
  "log_message": "Logical Quotas Policy: Insufficient privileges",
  "request_api_name": "DATA_OBJ_PUT_AN",
  "request_api_number": 606,
  "request_api_version": "d",
  "request_client_user": "neranjan",
  "request_host": "10.245.11.233",
  "request_proxy_user": "neranjan",
  "request_release_version": "rods4.3.0",
  "server_host": "arcirodsprdicat.rs.gsu.edu",
  "server_pid": 199993,
  "server_timestamp": "2021-02-25T15:12:54.734145",
  "server_type": "agent"
}
{
  "log_category": "rule_engine",
  "log_facility": "local0",
  "log_level": "error",
  "log_message": "iRODS Exception:\n    file: /application/Test/irods_r                                                                                      ule_engine_plugin_logical_quotas/src/handler.cpp\n    function: auto ir                                                                                      ods::handler::pep_api_replica_close::post(const std::string &, const ir                                                                                      ods::instance_configuration_map &, std::list<boost::any> &, MsParamArra                                                                                      y *, irods::callback &)::(anonymous class)::operator()(type-parameter-0                                                                                      -0 &, const type-parameter-0-1 &) const\n    line: 1414\n    code: -120                                                                                      5000 (RE_RUNTIME_ERROR)\n    message:\n        [-]\t/application/Test/i                                                                                      rods_rule_engine_plugin_logical_quotas/src/handler.cpp:615:irods::error                                                                                       irods::handler::logical_quotas_count_total_number_of_data_objects(cons                                                                                      t std::string &, const irods::instance_configuration_map &, std::list<b                                                                                      oost::any> &, MsParamArray *, irods::callback &) :  status [RE_RUNTIME_                                                                                      ERROR]  errno [] -- message [Logical Quotas Policy: Insufficient privil                                                                                      eges]\n\n\nstack trace:\n--------------\n\nDumping stack trace\n<0>\tOf                                                                                      fset: 0x6e  \tAddress: 0x7efccd28272e\tirods::exception::exception(long                                                                                      , std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::a                                                                                      llocator<char> > const&, std::__1::basic_string<char, std::__1::char_tr                                                                                      aits<char>, std::__1::allocator<char> > const&, unsigned int, std::__1:                                                                                      :basic_string<char, std::__1::char_traits<char>, std::__1::allocator<ch                                                                                      ar> > const&)\n<1>\tOffset: 0xca5 \tAddress: 0x7efcc968ed55\tirods::han                                                                                      dler::pep_api_replica_close::post(std::__1::basic_string<char, std::__1                                                                                      ::char_traits<char>, std::__1::allocator<char> > const&, std::__1::unor                                                                                      dered_map<std::__1::basic_string<char, std::__1::char_traits<char>, std                                                                                      ::__1::allocator<char> >, irods::instance_configuration, std::__1::hash                                                                                      <std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::al                                                                                      locator<char> > >, std::__1::equal_to<std::__1::basic_string<char, std:                                                                                      :__1::char_traits<char>, std::__1::allocator<char> > >, std::__1::alloc                                                                                      ator<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<                                                                                      char>, std::__1::allocator<char> > const, irods::instance_configuration                                                                                      > > > const&, std::__1::list<boost::any, std::__1::allocator<boost::any                                                                                      > >&, MsParamArray*, irods::callback&)\n<2>\tOffset: 0x22  \tAddress: 0                                                                                      x7efcc96492b2\tstd::__1::__function::__func<irods::error (*)(std::__1::                                                                                      basic_string<char, std::__1::char_traits<char>, std::__1::allocator<cha                                                                                      r> > const&, std::__1::unordered_map<std::__1::basic_string<char, std::                                                                                      __1::char_traits<char>, std::__1::allocator<char> >, irods::instance_co                                                                                      nfiguration, std::__1::hash<std::__1::basic_string<char, std::__1::char                                                                                      _traits<char>, std::__1::allocator<char> > >, std::__1::equal_to<std::_                                                                                      _1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator                                                                                      <char> > >, std::__1::allocator<std::__1::pair<std::__1::basic_string<c                                                                                      har, std::__1::char_traits<char>, std::__1::allocator<char> > const, ir                                                                                      ods::instance_configuration> > > const&, std::__1::list<boost::any, std                                                                                      ::__1::allocator<boost::any> >&, MsParamArray*, irods::callback&), std:                                                                                      :__1::allocator<irods::error (*)(std::__1::basic_string<char, std::__1:                                                                                      :char_traits<char>, std::__1::allocator<char> > const&, std::__1::unord                                                                                      ered_map<std::__1::basic_string<char, std::__1::char_traits<char>, std:                                                                                      :__1::allocator<char> >, irods::instance_configuration, std::__1::hash<                                                                                      std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::all                                                                                      ocator<char> > >, std::__1::equal_to<std::__1::basic_string<char, std::                                                                                      __1::char_traits<char>, std::__1::allocator<char> > >, std::__1::alloca                                                                                      tor<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<c                                                                                      har>, std::__1::allocator<char> > const, irods::instance_configuration>                                                                                       > > const&, std::__1::list<boost::any, std::__1::allocator<boost::any>                                                                                       >&, MsParamArray*, irods::callback&)>, irods::error (std::__1::basic_s                                                                                      tring<char, std::__1::char_traits<char>, std::__1::allocator<char> > co                                                                                      nst&, std::__1::unordered_map<std::__1::basic_string<char, std::__1::ch                                                                                      ar_traits<char>, std::__1::allocator<char> >, irods::instance_configura                                                                                      tion, std::__1::hash<std::__1::basic_string<char, std::__1::char_traits                                                                                      <char>, std::__1::allocator<char> > >, std::__1::equal_to<std::__1::bas                                                                                      ic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>                                                                                       > >, std::__1::allocator<std::__1::pair<std::__1::basic_string<char, st                                                                                      d::__1::char_traits<char>, std::__1::allocator<char> > const, irods::in                                                                                      stance_configuration> > > const&, std::__1::list<boost::any, std::__1::                                                                                      allocator<boost::any> >&, MsParamArray*, irods::callback&)>::operator()                                                                                      (std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::al                                                                                      locator<char> > const&, std::__1::unordered_map<std::__1::basic_string<                                                                                      char, std::__1::char_traits<char>, std::__1::allocator<char> >, irods::                                                                                      instance_configuration, std::__1::hash<std::__1::basic_string<char, std                                                                                      ::__1::char_traits<char>, std::__1::allocator<char> > >, std::__1::equa                                                                                      l_to<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1                                                                                      ::allocator<char> > >, std::__1::allocator<std::__1::pair<std::__1::bas                                                                                      ic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>                                                                                       > const, irods::instance_configuration> > > const&, std::__1::list<boos                                                                                      t::any, std::__1::allocator<boost::any> >&, MsParamArray*&&, irods::cal                                                                                      lback&)\n<3>\tOffset:       \tAddress: 0x7efcc9642c77\t/usr/lib/irods/p                                                                                      lugins/rule_engines/libirods_rule_engine_plugin-logical_quotas.so(+0x4a                                                                                      c77) [0x7efcc9642c77]\n<4>\tOffset: 0xe0  \tAddress: 0x7efcc8e9cb20\tir                                                                                      ods::error irods::pluggable_rule_engine<std::__1::tuple<> >::exec_rule<                                                                                      std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::all                                                                                      ocator<char> >&, irods::plugin_context&, BytesBuf*>(std::__1::basic_str                                                                                      ing<char, std::__1::char_traits<char>, std::__1::allocator<char> > cons                                                                                      t&, std::__1::tuple<>&, std::__1::basic_string<char, std::__1::char_tra                                                                                      its<char>, std::__1::allocator<char> >&&&, irods::plugin_context&&&, By                                                                                      tesBuf*&&, irods::callback)\n<5>\tOffset: 0x6f  \tAddress: 0x7efcc8e9c9                                                                                      cf\tstd::__1::__function::__func<irods::error irods::rule_engine_contex                                                                                      t_manager<std::__1::tuple<>, RuleExecInfo*, (irods::rule_execution_mana                                                                                      ger_pack)0>::exec_rule<std::__1::basic_string<char, std::__1::char_trai                                                                                      ts<char>, std::__1::allocator<char> >&, irods::plugin_context&, BytesBu                                                                                      f*>(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1:                                                                                      :allocator<char> > const&, std::__1::basic_string<char, std::__1::char_                                                                                      traits<char>, std::__1::allocator<char> >&&&, irods::plugin_context&&&,                                                                                       BytesBuf*&&)::'lambda'(irods::re_pack_inp<std::__1::tuple<> >&, std::_                                                                                      _1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator                                                                                      <char> > const&, std::__1::basic_string<char, std::__1::char_traits<cha                                                                                      r>, std::__1::allocator<char> >&, irods::plugin_context&, BytesBuf*&&):                                                                                      :operator()(irods::re_pack_inp<std::__1::tuple<> >&, std::__1::basic_st                                                                                      ring<char, std::__1::char_traits<char>, std::__1::allocator<char> > con                                                                                      st&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1                                                                                      ::allocator<char> >&, irods::plugin_context&, BytesBuf*&&) const::'lamb                                                                                      da'(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1:                                                                                      :allocator<char> > const&, irods::re_pack_inp<std::__1::tuple<> >&, std                                                                                      ::__1::basic_string<char, std::__1::char_traits<char>, std::__1::alloca                                                                                      tor<char> >&, irods::plugin_context&, BytesBuf*&&), std::__1::allocator                                                                                      <irods::error irods::rule_engine_context_manager<std::__1::tuple<>, Rul                                                                                      eExecInfo*, (irods::rule_execution_manager_pack)0>::exec_rule<std::__1:                                                                                      :basic_string<char, std::__1::char_traits<char>, std::__1::allocator<ch                                                                                      ar> >&, irods::plugin_context&, BytesBuf*>(std::__1::basic_string<char,                                                                                       std::__1::char_traits<char>, std::__1::allocator<char> > const&, std::                                                                                      __1::basic_string<char, std::__1::char_traits<char>, std::__1::allocato                                                                                      r<char> >&&&, irods::plugin_context&&&, BytesBuf*&&)::'lambda'(irods::r                                                                                      e_pack_inp<std::__1::tuple<> >&, std::__1::basic_string<char, std::__1:                                                                                      :char_traits<char>, std::__1::allocator<char> > const&, std::__1::basic                                                                                      _string<char, std::__1::char_traits<char>, std::__1::allocator<char> >&                                                                                      , irods::plugin_context&, BytesBuf*&&)::operator()(irods::re_pack_inp<s                                                                                      td::__1::tuple<> >&, std::__1::basic_string<char, std::__1::char_traits                                                                                      <char>, std::__1::allocator<char> > const&, std::__1::basic_string<char                                                                                      , std::__1::char_traits<char>, std::__1::allocator<char> >&, irods::plu                                                                                      gin_context&, BytesBuf*&&) const::'lambda'(std::__1::basic_string<char,                                                                                       std::__1::char_traits<char>, std::__1::allocator<char> > const&, irods                                                                                      ::re_pack_inp<std::__1::tuple<> >&, std::__1::basic_string<char, std::_                                                                                      _1::char_traits<char>, std::__1::allocator<char> >&, irods::plugin_cont                                                                                      ext&, BytesBuf*&&)>, irods::error (std::__1::basic_string<char, std::__                                                                                      1::char_traits<char>, std::__1::allocator<char> > const&, irods::re_pac                                                                                      k_inp<std::__1::tuple<> >&, std::__1::basic_string<char, std::__1::char                                                                                      _traits<char>, std::__1::allocator<char> >&, irods::plugin_context&, By                                                                                      tesBuf*&&)>::operator()(std::__1::basic_string<char, std::__1::char_tra                                                                                      its<char>, std::__1::allocator<char> > const&, irods::re_pack_inp<std::                                                                                      __1::tuple<> >&, std::__1::basic_string<char, std::__1::char_traits<cha                                                                                      r>, std::__1::allocator<char> >&, irods::plugin_context&, BytesBuf*&&)\                                                                                      n<6>\tOffset: 0x180 \tAddress: 0x7efcc8e9d870\tirods::error irods::dyna                                                                                      mic_operation_execution_manager<std::__1::tuple<>, RuleExecInfo*, (irod                                                                                      s::rule_execution_manager_pack)1>::call<std::__1::function<irods::error                                                                                       (std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::a                                                                                      llocator<char> > const&, irods::re_pack_inp<std::__1::tuple<> >&, std::                                                                                      __1::basic_string<char, std::__1::char_traits<char>, std::__1::allocato                                                                                      r<char> >&, irods::plugin_context&, BytesBuf*&&)>, std::__1::basic_stri                                                                                      ng<char, std::__1::char_traits<char>, std::__1::allocator<char> > const                                                                                      &, irods::re_pack_inp<std::__1::tuple<> >&, std::__1::basic_string<char                                                                                      , std::__1::char_traits<char>, std::__1::allocator<char> >&, irods::plu                                                                                      gin_context&, BytesBuf*>(std::__1::basic_string<char, std::__1::char_tr                                                                                      aits<char>, std::__1::allocator<char> >, std::__1::basic_string<char, s                                                                                      td::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::func                                                                                      tion<irods::error (std::__1::basic_string<char, std::__1::char_traits<c                                                                                      har>, std::__1::allocator<char> > const&, irods::re_pack_inp<std::__1::                                                                                      tuple<> >&, std::__1::basic_string<char, std::__1::char_traits<char>, s                                                                                      td::__1::allocator<char> >&, irods::plugin_context&, BytesBuf*&&)>, std                                                                                      ::__1::basic_string<char, std::__1::char_traits<char>, std::__1::alloca                                                                                      tor<char> > const&&&, irods::re_pack_inp<std::__1::tuple<> >&&&, std::_                                                                                      _1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator                                                                                      <char> >&&&, irods::plugin_context&&&, BytesBuf*&&)::'lambda'()::operat                                                                                      or()() const\n<7>\tOffset: 0xb6  \tAddress: 0x7efcc8e9c696\tirods::erro                                                                                      r irods::dynamic_operation_execution_manager<std::__1::tuple<>, RuleExe                                                                                      cInfo*, (irods::rule_execution_manager_pack)1>::call<std::__1::function                                                                                      <irods::error (std::__1::basic_string<char, std::__1::char_traits<char>                                                                                      , std::__1::allocator<char> > const&, irods::re_pack_inp<std::__1::tupl                                                                                      e<> >&, std::__1::basic_string<char, std::__1::char_traits<char>, std::                                                                                      __1::allocator<char> >&, irods::plugin_context&, BytesBuf*&&)>, std::__                                                                                      1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<                                                                                      char> > const&, irods::re_pack_inp<std::__1::tuple<> >&, std::__1::basi                                                                                      c_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >                                                                                      &, irods::plugin_context&, BytesBuf*>(std::__1::basic_string<char, std:                                                                                      :__1::char_traits<char>, std::__1::allocator<char> >, std::__1::basic_s                                                                                      tring<char, std::__1::char_traits<char>, std::__1::allocator<char> >, s                                                                                      td::__1::function<irods::error (std::__1::basic_string<char, std::__1::                                                                                      char_traits<char>, std::__1::allocator<char> > const&, irods::re_pack_i                                                                                      np<std::__1::tuple<> >&, std::__1::basic_string<char, std::__1::char_tr                                                                                      aits<char>, std::__1::allocator<char> >&, irods::plugin_context&, Bytes                                                                                      Buf*&&)>, std::__1::basic_string<char, std::__1::char_traits<char>, std                                                                                      ::__1::allocator<char> > const&&&, irods::re_pack_inp<std::__1::tuple<>                                                                                       >&&&, std::__1::basic_string<char, std::__1::char_traits<char>, std::_                                                                                      _1::allocator<char> >&&&, irods::plugin_context&&&, BytesBuf*&&)\n<8>\t                                                                                      Offset: 0xf5  \tAddress: 0x7efcc8e9c2a5\tirods::error irods::rule_engin                                                                                      e_context_manager<std::__1::tuple<>, RuleExecInfo*, (irods::rule_execut                                                                                      ion_manager_pack)0>::exec_rule<std::__1::basic_string<char, std::__1::c                                                                                      har_traits<char>, std::__1::allocator<char> >&, irods::plugin_context&,                                                                                       BytesBuf*>(std::__1::basic_string<char, std::__1::char_traits<char>, s                                                                                      td::__1::allocator<char> > const&, std::__1::basic_string<char, std::__                                                                                      1::char_traits<char>, std::__1::allocator<char> >&&&, irods::plugin_con                                                                                      text&&&, BytesBuf*&&)::'lambda'(irods::re_pack_inp<std::__1::tuple<> >&                                                                                      , std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::a                                                                                      llocator<char> > const&, std::__1::basic_string<char, std::__1::char_tr                                                                                      aits<char>, std::__1::allocator<char> >&, irods::plugin_context&, Bytes                                                                                      Buf*&&)::operator()(irods::re_pack_inp<std::__1::tuple<> >&, std::__1::                                                                                      basic_string<char, std::__1::char_traits<char>, std::__1::allocator<cha                                                                                      r> > const&, std::__1::basic_string<char, std::__1::char_traits<char>,                                                                                       std::__1::allocator<char> >&, irods::plugin_context&, BytesBuf*&&) cons                                                                                      t\n<9>\tOffset: 0x103 \tAddress: 0x7efcc8e9bf23\tirods::error irods::co                                                                                      ntrol<irods::error irods::rule_engine_context_manager<std::__1::tuple<>                                                                                      , RuleExecInfo*, (irods::rule_execution_manager_pack)0>::exec_rule<std:                                                                                      :__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocat                                                                                      or<char> >&, irods::plugin_context&, BytesBuf*>(std::__1::basic_string<                                                                                      char, std::__1::char_traits<char>, std::__1::allocator<char> > const&,                                                                                       std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::all                                                                                      ocator<char> >&&&, irods::plugin_context&&&, BytesBuf*&&)::'lambda'(iro                                                                                      ds::re_pack_inp<std::__1::tuple<> >&, std::__1::basic_string<char, std:                                                                                      :__1::char_traits<char>, std::__1::allocator<char> > const&, std::__1::                                                                                      basic_string<char, std::__1::char_traits<char>, std::__1::allocator<cha                                                                                      r> >&, irods::plugin_context&, BytesBuf*&&), irods::error irods::rule_e                                                                                      ngine_context_manager<std::__1::tuple<>, RuleExecInfo*, (irods::rule_ex                                                                                      ecution_manager_pack)0>::exec_rule<std::__1::basic_string<char, std::__                                                                                      1::char_traits<char>, std::__1::allocator<char> >&, irods::plugin_conte                                                                                      xt&, BytesBuf*>(std::__1::basic_string<char, std::__1::char_traits<char                                                                                      >, std::__1::allocator<char> > const&, std::__1::basic_string<char, std                                                                                      ::__1::char_traits<char>, std::__1::allocator<char> >&&&, irods::plugin                                                                                      _context&&&, BytesBuf*&&)::'lambda'(std::__1::basic_string<char, std::_                                                                                      _1::char_traits<char>, std::__1::allocator<char> > const&, std::__1::ba                                                                                      sic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>                                                                                       >&, irods::plugin_context&, BytesBuf*&&), std::__1::tuple<>, std::__1:                                                                                      :basic_string<char, std::__1::char_traits<char>, std::__1::allocator<ch                                                                                      ar> >&, irods::plugin_context&, BytesBuf*>(std::__1::list<irods::re_pac                                                                                      k_inp<std::__1::tuple<> >, std::__1::allocator<irods::re_pack_inp<std::                                                                                      __1::tuple<> > > >&, irods::error irods::rule_engine_context_manager<st                                                                                      d::__1::tuple<>, RuleExecInfo*, (irods::rule_execution_manager_pack)0>:                                                                                      :exec_rule<std::__1::basic_string<char, std::__1::char_traits<char>, st                                                                                      d::__1::allocator<char> >&, irods::plugin_context&, BytesBuf*>(std::__1                                                                                      ::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<c                                                                                      har> > const&, std::__1::basic_string<char, std::__1::char_traits<char>                                                                                      , std::__1::allocator<char> >&&&, irods::plugin_context&&&, BytesBuf*&&                                                                                      )::'lambda'(irods::re_pack_inp<std::__1::tuple<> >&, std::__1::basic_st                                                                                      ring<char, std::__1::char_traits<char>, std::__1::allocator<char> > con                                                                                      st&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1                                                                                      ::allocator<char> >&, irods::plugin_context&, BytesBuf*&&), irods::erro                                                                                      r irods::rule_engine_context_manager<std::__1::tuple<>, RuleExecInfo*,                                                                                       (irods::rule_execution_manager_pack)0>::exec_rule<std::__1::basic_strin                                                                                      g<char, std::__1::char_traits<char>, std::__1::allocator<char> >&, irod                                                                                      s::plugin_context&, BytesBuf*>(std::__1::basic_string<char, std::__1::c                                                                                      har_traits<char>, std::__1::allocator<char> > const&, std::__1::basic_s                                                                                      tring<char, std::__1::char_traits<char>, std::__1::allocator<char> >&&&                                                                                      , irods::plugin_context&&&, BytesBuf*&&)::'lambda'(std::__1::basic_stri                                                                                      ng<char, std::__1::char_traits<char>, std::__1::allocator<char> > const                                                                                      &, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::                                                                                      allocator<char> >&, irods::plugin_context&, BytesBuf*&&), std::__1::bas                                                                                      ic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>                                                                                       > const&, std::__1::basic_string<char, std::__1::char_traits<char>, std                                                                                      ::__1::allocator<char> >&&&, irods::plugin_context&&&, BytesBuf*&&)\n<1                                                                                      0>\tOffset: 0x5bf \tAddress: 0x7efcc8e9355f\tirods::error irods::api_en                                                                                      try::invoke_policy_enforcement_point<BytesBuf*>(irods::rule_engine_cont                                                                                      ext_manager<std::__1::tuple<>, RuleExecInfo*, (irods::rule_execution_ma                                                                                      nager_pack)0>, irods::plugin_context, std::__1::basic_string<char, std:                                                                                      :__1::char_traits<char>, std::__1::allocator<char> > const&, std::__1::                                                                                      basic_string<char, std::__1::char_traits<char>, std::__1::allocator<cha                                                                                      r> > const&, BytesBuf*)\n<11>\tOffset: 0x79a \tAddress: 0x7efcc8e90f3a\                                                                                      tint irods::api_entry::call_handler<BytesBuf*>(RsComm*, BytesBuf*)\n<12                                                                                      >\tOffset: 0x9c  \tAddress: 0x7efcd0267bcc\tint irods::server_api_call<                                                                                      BytesBuf>(int, RsComm*, BytesBuf*)\n<13>\tOffset:       \tAddress: 0x7e                                                                                      fcd0267b15\t/lib/libirods_server.so.4.3.0(rs_replica_close+0x35) [0x7ef                                                                                      cd0267b15]\n<14>\tOffset:       \tAddress: 0x7efcd02de51b\t/lib/libirod                                                                                      s_server.so.4.3.0(+0x98f51b) [0x7efcd02de51b]\n<15>\tOffset: 0xb16 \tAd                                                                                      dress: 0x7efcd02dcf26\trsDataObjPut(RsComm*, DataObjInp*, BytesBuf*, po                                                                                      rtalOprOut**)\n<16>\tOffset: 0x9c  \tAddress: 0x7efcd051602c\tirods::ap                                                                                      i_call_adaptor<DataObjInp*, BytesBuf*, portalOprOut**>::operator()(irod                                                                                      s::plugin_context&, RsComm*, DataObjInp*, BytesBuf*, portalOprOut**)\n<                                                                                      17>\tOffset: 0x26  \tAddress: 0x7efcd0515f56\tstd::__1::__function::__f                                                                                      unc<irods::api_call_adaptor<DataObjInp*, BytesBuf*, portalOprOut**>, st                                                                                      d::__1::allocator<irods::api_call_adaptor<DataObjInp*, BytesBuf*, porta                                                                                      lOprOut**> >, irods::error (irods::plugin_context&, RsComm*, DataObjInp                                                                                      *, BytesBuf*, portalOprOut**)>::operator()(irods::plugin_context&, RsCo                                                                                      mm*&&, DataObjInp*&&, BytesBuf*&&, portalOprOut**&&)\n<18>\tOffset: 0x1                                                                                      494\tAddress: 0x7efcd0411584\tint irods::api_entry::call_handler<DataOb                                                                                      jInp*, BytesBuf*, portalOprOut**>(RsComm*, DataObjInp*, BytesBuf*, port                                                                                      alOprOut**)\n<19>\tOffset: 0xba7 \tAddress: 0x7efcd06bd6a7\trsApiHandle                                                                                      r(RsComm*, int, BytesBuf*, BytesBuf*)\n<20>\tOffset: 0xa4b \tAddress: 0                                                                                      x7efcd06bf7bb\treadAndProcClientMsg(RsComm*, int)\n<21>\tOffset: 0xd08                                                                                       \tAddress: 0x7efcd06a5a08\tagentMain(RsComm*)\n<22>\tOffset: 0x28b5\tAd                                                                                      dress: 0x7efcd06a39b5\trunIrodsAgentFactory(sockaddr_un)\n<23>\tOffset:                                                                                             \tAddress: 0x43b9ed\t/usr/sbin/irodsServer(main+0x153d) [0x43b9e                                                                                      d]\n<24>\tOffset:       \tAddress: 0x7efccc4f9555\t/lib64/libc.so.6(__l                                                                                      ibc_start_main+0xf5) [0x7efccc4f9555]\n<25>\tOffset:       \tAddress: 0                                                                                      x43a35d\t/usr/sbin/irodsServer() [0x43a35d]\n\n\n",
  "request_api_name": "DATA_OBJ_PUT_AN",
  "request_api_number": 606,
  "request_api_version": "d",
  "request_client_user": "neranjan",
  "request_host": "10.245.11.233",
  "request_proxy_user": "neranjan",
  "request_release_version": "rods4.3.0",
  "server_host": "arcirodsprdicat.rs.gsu.edu",
  "server_pid": 199993,
  "server_timestamp": "2021-02-25T15:12:54.742415",
  "server_type": "agent"
}
{
  "log_category": "legacy",
  "log_facility": "local0",
  "log_level": "error",
  "log_message": "[single_buffer_put:313] - error closing replica; ec:[                                                                                      -1205000]",
  "request_api_name": "DATA_OBJ_PUT_AN",
  "request_api_number": 606,
  "request_api_version": "d",
  "request_client_user": "neranjan",
  "request_host": "10.245.11.233",
  "request_proxy_user": "neranjan",
  "request_release_version": "rods4.3.0",
  "server_host": "arcirodsprdicat.rs.gsu.edu",
  "server_pid": 199993,
  "server_timestamp": "2021-02-25T15:12:54.742916",
  "server_type": "agent"
}
{
  "log_category": "legacy",
  "log_facility": "local0",
  "log_level": "error",
  "log_message": "packNonpointerItem:strlen 1030 of msg > dim size 1024                                                                                      ,content:iRODS Exception:\n    file: /application/Test/irods_rule_engin                                                                                      e_plugin_logical_quotas/src/handler.cpp\n    function: auto irods::hand                                                                                      ler::pep_api_replica_close::post(const std::string &, const irods::inst                                                                                      ance_configuration_map &, std::list<boost::any> &, MsParamArray *, irod                                                                                      s::callback &)::(anonymous class)::operator()(type-parameter-0-0 &, con                                                                                      st type-parameter-0-1 &) const\n    line: 1414\n    code: -1205000 (RE_                                                                                      RUNTIME_ERROR)\n    message:\n        [-]\t/application/Test/irods_rule                                                                                      _engine_plugin_logical_quotas/src/handler.cpp:615:irods::error irods::h                                                                                      andler::logical_quotas_count_total_number_of_data_objects(const std::st                                                                                      ring &, const irods::instance_configuration_map &, std::list<boost::any                                                                                      > &, MsParamArray *, irods::callback &) :  status [RE_RUNTIME_ERROR]  e                                                                                      rrno [] -- message [Logical Quotas Policy: Insufficient privileges]\n\n                                                                                      \nstack trace:\n--------------\n\nDumping stack trace\n<0>\tOffset: 0x6                                                                                      e  \tAddress: 0x7efccd28272e\tirods::exception::exception(long, std::__                                                                                      1::basic_string<char, std::__1::char_traits<char>, std:back Q\u0004",
  "request_api_name": "DATA_OBJ_PUT_AN",
  "request_api_number": 606,
  "request_api_version": "d",
  "request_client_user": "neranjan",
  "request_host": "10.245.11.233",
  "request_proxy_user": "neranjan",
  "request_release_version": "rods4.3.0",
  "server_host": "arcirodsprdicat.rs.gsu.edu",
  "server_pid": 199993,
  "server_timestamp": "2021-02-25T15:12:54.743098",
  "server_type": "agent"
}
{
  "log_category": "legacy",
  "log_facility": "local0",
  "log_level": "info",
  "log_message": "sendApiReply: packStruct error, status = -308000",
  "request_api_name": "DATA_OBJ_PUT_AN",
  "request_api_number": 606,
  "request_api_version": "d",
  "request_client_user": "neranjan",
  "request_host": "10.245.11.233",
  "request_proxy_user": "neranjan",
  "request_release_version": "rods4.3.0",
  "server_host": "arcirodsprdicat.rs.gsu.edu",
  "server_pid": 199993,
  "server_timestamp": "2021-02-25T15:12:54.743189",
  "server_type": "agent"
}

We set the logical quota using the following method

We create start_monitoring_collection.r with the following content

{
    "operation": "logical_quotas_start_monitoring_collection",
    "collection": "/tempZone/home/neranjan"
}
INPUT null
OUTPUT ruleExecOut

then execute the rule with the following command

irule -r irods_rule_engine_plugin-logical_quotas-instance -F start_monitoring_collection.r

Some more info that might help

/arcticZone/home/neranjan:
  neranjan          0 workResc            0 2021-02-24.15:25 ? test.txr
        generic    /work/home/neranjan/test.txr
  neranjan          0 workResc            0 2021-02-24.15:26 ? test1.txt
        generic    /work/home/neranjan/test1.txt
  neranjan          0 workResc            0 2021-02-25.09:08 ? test2.txt
        generic    /work/home/neranjan/test2.txt
  neranjan          0 workResc            0 2021-02-25.09:29 ? test5.txt
        generic    /work/home/neranjan/test5.txt
  neranjan          0 workResc            0 2021-02-25.10:12 ? test6.txt
        generic    /work/home/neranjan/test6.txt
[neranjan@arclogin02 ~]$  imeta ls -C  /arcticZone/home/neranjan
AVUs defined for collection /arcticZone/home/neranjan:
attribute: irods::logical_quotas::maximum_size_in_bytes
value: 214748364800
units:
----
attribute: irods::logical_quotas::total_number_of_data_objects
value: 0
units:
----
attribute: irods::logical_quotas::total_size_in_bytes
value: 0
units:

What could be the issue here?

trel commented 3 years ago

I see two things -

  1. you're running unreleased code, so there are no claims that things are in a working state with whichever commit you built yourself

  2. the data objects listed are all in an INTERMEDIATE state (as denoted by the ? in the ils output) and will not be available for opening/reading/writing by any client.

We will not be able to reproduce what you're seeing unless we know which code you're running - can you share the git commit SHAs of:

Of course, please also include if you've made any changes before compiling.

EPNSED commented 3 years ago

Hi @trel Here is the SHAs

[neranjan@arclogin02 irods_client_icommands]$ git rev-parse --verify HEAD
befe37b0b1e1ce5df38973ab281e19d522d1622c
[neranjan@arclogin02 irods]$  git rev-parse --verify HEAD
ee116cbc7cf90f6b0960e596b0b7ebf97877393b
[neranjan@arclogin02 irods_rule_engine_plugin_logical_quotas]$  git rev-parse --verify HEAD
67e8641707a9f9bbdf0ce7db35db4ad4c3b936f4

Question, any hint why data objects are in INTERMEDIATE state? How to avoid this?

trel commented 3 years ago

The intermediate states have not yet been released - they are landing in 4-2-stable now and will be included in 4.2.9.

They'll land in master at the same time and be first released there with 4.3.0.

You're running intermediate intermediate code :)

EPNSED commented 3 years ago

:) Ok, We will try 4.2.8 then. Thanks for looking into this