Assertion in HttpCacheSM::state_cache_open_read

Not sure how long this has been going on for, but today I made a new (debug) build on Docs, without ASAN, to try to get a better trace for the Brotli crasher. However, very frequently, we now assert as below :-/.
#0  0x00002b4bcad4f337 in __GI_raise (sig=sig@entry=6) at ../nptl/sysdeps/unix/sysv/linux/raise.c:55
#1  0x00002b4bcad50a28 in __GI_abort () at abort.c:90
#2  0x00002b4bc875b7d1 in ink_abort (message_format=0x2b4bc87c90e8 "%s:%d: failed assertion `%s`") at ink_error.cc:99
#3  0x00002b4bc875880e in _ink_assert (expression=0x985424 "captive_action.cancelled == 0", file=0x985398 "HttpCacheSM.cc", line=101) at ink_assert.cc:37
#4  0x00000000007423af in HttpCacheSM::state_cache_open_read (this=0x2b4bd0970da8, event=1103, data=0xffffffffffffb049) at HttpCacheSM.cc:101
#5  0x000000000064a6b3 in Continuation::handleEvent (this=0x2b4bd0970da8, event=1103, data=0xffffffffffffb049) at /usr/local/src/trafficserver/iocore/eventsystem/I_Continuation.h:190
#6  0x000000000086a7d9 in Cache::open_read (this=0x0, cont=0x2b4bd0970da8, key=0x2b4bd0970e80, request=0x2b4bd096f730, params=0x2b4bd096fcb0, type=CACHE_FRAG_TYPE_HTTP, hostname=0x2b4bd097402b "docs.trafficserver.apache.org", host_len=29) at CacheRead.cc:100
#7  0x000000000085101f in CacheProcessor::open_read (this=0xe49cc0 <cacheProcessor>, cont=0x2b4bd0970da8, key=0x2b4bd0970e70, request=0x2b4bd096f730, params=0x2b4bd096fcb0, pin_in_cache=0, type=CACHE_FRAG_TYPE_HTTP) at Cache.cc:3153
#8  0x0000000000742f37 in HttpCacheSM::do_cache_open_read (this=0x2b4bd0970da8, key=...) at HttpCacheSM.cc:271
#9  0x00000000007430c3 in HttpCacheSM::open_read (this=0x2b4bd0970da8, key=0x2b4bcf800670, url=0x2b4bd096f0b8, hdr=0x2b4bd096f730, params=0x2b4bd096fcb0, pin_in_cache=0) at HttpCacheSM.cc:304
#10 0x00000000006e4294 in HttpSM::do_cache_lookup_and_read (this=0x2b4bd096f000) at HttpSM.cc:4516
#11 0x00000000006efe7e in HttpSM::set_next_state (this=0x2b4bd096f000) at HttpSM.cc:7333
#12 0x00000000006ef15c in HttpSM::call_transact_and_set_next_state (this=0x2b4bd096f000, f=0x0) at HttpSM.cc:7163
#13 0x00000000006dbb05 in HttpSM::state_cache_open_write (this=0x2b4bd096f000, event=1102, data=0x2b4bccfff880) at HttpSM.cc:2482
#14 0x00000000006dc55c in HttpSM::main_handler (this=0x2b4bd096f000, event=1102, data=0x2b4bccfff880) at HttpSM.cc:2595
#15 0x000000000064a6b3 in Continuation::handleEvent (this=0x2b4bd096f000, event=1102, data=0x2b4bccfff880) at /usr/local/src/trafficserver/iocore/eventsystem/I_Continuation.h:190
#16 0x0000000000742c2f in HttpCacheSM::state_cache_open_write (this=0x2b4bd0970da8, event=2, data=0x2b4bccfff880) at HttpCacheSM.cc:221
#17 0x000000000064a6b3 in Continuation::handleEvent (this=0x2b4bd0970da8, event=2, data=0x2b4bccfff880) at /usr/local/src/trafficserver/iocore/eventsystem/I_Continuation.h:190
#18 0x0000000000946b2b in EThread::process_event (this=0x2b4bcd220000, e=0x2b4bccfff880, calling_code=2) at UnixEThread.cc:143
#19 0x0000000000947106 in EThread::execute_regular (this=0x2b4bcd220000) at UnixEThread.cc:256
#20 0x000000000094745f in EThread::execute (this=0x2b4bcd220000) at UnixEThread.cc:351
#21 0x0000000000945da5 in spawn_thread_internal (a=0x2b4bcc2cfb40) at Thread.cc:92
#22 0x00002b4bca0e1e65 in start_thread (arg=0x2b4bcf801700) at pthread_create.c:307
#23 0x00002b4bcae1788d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:111

bt full is
#0  0x00002b4bcad4f337 in __GI_raise (sig=sig@entry=6) at ../nptl/sysdeps/unix/sysv/linux/raise.c:55
        resultvar = 0
        pid = 3788
        selftid = 3797
#1  0x00002b4bcad50a28 in __GI_abort () at abort.c:90
        save_stage = 2
        act = {
          __sigaction_handler = {
            sa_handler = 0x0,
            sa_sigaction = 0x0
          },
          sa_mask = {
            __val = {0 <repeats 16 times>}
          },
          sa_flags = 0,
          sa_restorer = 0x2b4bd0970528
        }
        sigs = {
          __val = {32, 0 <repeats 15 times>}
        }
#2  0x00002b4bc875b7d1 in ink_abort (message_format=0x2b4bc87c90e8 "%s:%d: failed assertion `%s`") at ink_error.cc:99
        ap = {{
            gp_offset = 32,
            fp_offset = 48,
            overflow_arg_area = 0x2b4bcf800350,
            reg_save_area = 0x2b4bcf800290
          }}
#3  0x00002b4bc875880e in _ink_assert (expression=0x985424 "captive_action.cancelled == 0", file=0x985398 "HttpCacheSM.cc", line=101) at ink_assert.cc:37
No locals.
#4  0x00000000007423af in HttpCacheSM::state_cache_open_read (this=0x2b4bd0970da8, event=1103, data=0xffffffffffffb049) at HttpCacheSM.cc:101
        __FUNCTION__ = "state_cache_open_read"
#5  0x000000000064a6b3 in Continuation::handleEvent (this=0x2b4bd0970da8, event=1103, data=0xffffffffffffb049) at /usr/local/src/trafficserver/iocore/eventsystem/I_Continuation.h:190
No locals.
#6  0x000000000086a7d9 in Cache::open_read (this=0x0, cont=0x2b4bd0970da8, key=0x2b4bd0970e80, request=0x2b4bd096f730, params=0x2b4bd096fcb0, type=CACHE_FRAG_TYPE_HTTP, hostname=0x2b4bd097402b "docs.trafficserver.apache.org", host_len=29) at CacheRead.cc:100
        vol = 0x0
        result = {
          w = {0, 0, 0, 0, 0}
        }
        last_collision = 0x22e168c9c06ca1c6
        mutex = 0x0
        od = 0x2b4b00000000
        c = 0x0
        __FUNCTION__ = "open_read"
#7  0x000000000085101f in CacheProcessor::open_read (this=0xe49cc0 <cacheProcessor>, cont=0x2b4bd0970da8, key=0x2b4bd0970e70, request=0x2b4bd096f730, params=0x2b4bd096fcb0, pin_in_cache=0, type=CACHE_FRAG_TYPE_HTTP) at Cache.cc:3153
No locals.
#8  0x0000000000742f37 in HttpCacheSM::do_cache_open_read (this=0x2b4bd0970da8, key=...) at HttpCacheSM.cc:271
        action_handle = 0x2b4bd0970e70
#9  0x00000000007430c3 in HttpCacheSM::open_read (this=0x2b4bd0970da8, key=0x2b4bcf800670, url=0x2b4bd096f0b8, hdr=0x2b4bd096f730, params=0x2b4bd096fcb0, pin_in_cache=0) at HttpCacheSM.cc:304
        act_return = 0x2b4bcf800670
#10 0x00000000006e4294 in HttpSM::do_cache_lookup_and_read (this=0x2b4bd096f000) at HttpSM.cc:4516
        c_url = 0x2b4bd096f0b8
        __FUNCTION__ = "do_cache_lookup_and_read"
        key = {
          hostlen = 29,
          hostname = 0x2b4bd097402b "docs.trafficserver.apache.org",
          hash = {
            b = {24118497333652305,<PHONE_NUMBER>775507398},
            u64 = {24118497333652305,<PHONE_NUMBER>775507398},
            u32 = {1108781905, 5615525,<PHONE_NUMBER>, 585197769},
            u8 = "Q\253\026B\245\257U\000ơl\300\311h\341\""
          },
          hash2 = {
            b = {0, 0},
            u64 = {0, 0},
            u32 = {0, 0, 0, 0},
            u8 = '\000' <repeats 15 times>
          }
        }
        cache_action_handle = 0x2b4bcf8006f0
#11 0x00000000006efe7e in HttpSM::set_next_state (this=0x2b4bd096f000) at HttpSM.cc:7333
        __FUNCTION__ = "set_next_state"
#12 0x00000000006ef15c in HttpSM::call_transact_and_set_next_state (this=0x2b4bd096f000, f=0x0) at HttpSM.cc:7163
        __FUNCTION__ = "call_transact_and_set_next_state"
#13 0x00000000006dbb05 in HttpSM::state_cache_open_write (this=0x2b4bd096f000, event=1102, data=0x2b4bccfff880) at HttpSM.cc:2482
        __FUNCTION__ = "state_cache_open_write"
#14 0x00000000006dc55c in HttpSM::main_handler (this=0x2b4bd096f000, event=1102, data=0x2b4bccfff880) at HttpSM.cc:2595
        jump_point = NULL
        __FUNCTION__ = "main_handler"
        vc_entry = 0x0
#15 0x000000000064a6b3 in Continuation::handleEvent (this=0x2b4bd096f000, event=1102, data=0x2b4bccfff880) at /usr/local/src/trafficserver/iocore/eventsystem/I_Continuation.h:190
No locals.
#16 0x0000000000742c2f in HttpCacheSM::state_cache_open_write (this=0x2b4bd0970da8, event=2, data=0x2b4bccfff880) at HttpCacheSM.cc:221
        __FUNCTION__ = "state_cache_open_write"
        read_retry_on_write_fail = false
#17 0x000000000064a6b3 in Continuation::handleEvent (this=0x2b4bd0970da8, event=2, data=0x2b4bccfff880) at /usr/local/src/trafficserver/iocore/eventsystem/I_Continuation.h:190
No locals.
#18 0x0000000000946b2b in EThread::process_event (this=0x2b4bcd220000, e=0x2b4bccfff880, calling_code=2) at UnixEThread.cc:143
        c_temp = 0x2b4bd0970da8
        lock = {
          m = {
            m_ptr = 0x2b4bd08b3160
          },
          lock_acquired = true
        }
        __FUNCTION__ = "process_event"
#19 0x0000000000947106 in EThread::execute_regular (this=0x2b4bcd220000) at UnixEThread.cc:256
        done_one = true
        sleep_time = 60000000
        e = 0x2b4bccfff880
        NegativeQueue = {
          <DLL<Event, Event::Link_link>> = {
            head = 0x0
          },
          members of Queue<Event, Event::Link_link>:
          tail = 0x0
        }
        next_time =<PHONE_NUMBER>761776255
        delta = 60331370
        loop_start_time =<PHONE_NUMBER>182109899
        loop_finish_time =<PHONE_NUMBER>182107625
        prev_metric = 0x2b4bcd325e60
        nq_count = 1
        ev_count = 1
        METRIC_INIT = {
          _loop_time = {
            _start = 0,
            _min =<PHONE_NUMBER>854775807,
            _max = 0
          },
          _events = {
            _min =<PHONE_NUMBER>,
            _max = 0,
            _total = 0
          },
          _count = 0,
          _wait = 0
        }
#20 0x000000000094745f in EThread::execute (this=0x2b4bcd220000) at UnixEThread.cc:351
        __FUNCTION__ = "execute"
#21 0x0000000000945da5 in spawn_thread_internal (a=0x2b4bcc2cfb40) at Thread.cc:92
        p = 0x2b4bcc2cfb40
#22 0x00002b4bca0e1e65 in start_thread (arg=0x2b4bcf801700) at pthread_create.c:307
        __res = <optimized out>
        pd = 0x2b4bcf801700
        now = <optimized out>
        unwind_buf = {
          cancel_jmp_buf = {{
              jmp_buf = {47604603819776, -819238072451363906, 0, 2101248, 0,<PHONE_NUMBER>9776, -6757963157159834690, -6757951079157756994},
              mask_was_saved = 0
            }},
          priv = {
            pad = {0x0, 0x0, 0x0, 0x0},
            data = {
              prev = 0x0,
              cleanup = 0x0,
              canceltype = 0
            }
          }
        }
        not_first_call = <optimized out>
        pagesize_m1 = <optimized out>
        sp = <optimized out>
        freesize = <optimized out>
#23 0x00002b4bcae1788d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:111
No locals.

HttpSM history:
(gdb) frame 10
#10 0x00000000006e4294 in HttpSM::do_cache_lookup_and_read (this=0x2b4bd096f000) at HttpSM.cc:4516
4516	    static_cast<time_t>((t_state.cache_control.pin_in_cache_for < 0) ? 0 : t_state.cache_control.pin_in_cache_for));
(gdb) print history
$1 = {
  history = {{
      location = {
        file = 0x9701d6 "HttpSM.cc",
        func = 0x974d00 <HttpSM::state_read_client_request_header(int, void*)::__FUNCTION__> "state_read_client_request_header",
        line = 601
      },
      event = 100,
      reentrancy = 2
    }, {
      location = {
        file = 0x9701d6 "HttpSM.cc",
        func = 0x974e70 <HttpSM::state_api_callback(int, void*)::__FUNCTION__> "state_api_callback",
        line = 1325
      },
      event = 60000,
      reentrancy = 3
    }, {
      location = {
        file = 0x9701d6 "HttpSM.cc",
        func = 0x974e90 <HttpSM::state_api_callout(int, void*)::__FUNCTION__> "state_api_callout",
        line = 1365
      },
      event = 60000,
      reentrancy = 3
    }, {
      location = {
        file = 0x9701d6 "HttpSM.cc",
        func = 0x974e70 <HttpSM::state_api_callback(int, void*)::__FUNCTION__> "state_api_callback",
        line = 1325
      },
      event = 60000,
      reentrancy = 4
    }, {
      location = {
        file = 0x9701d6 "HttpSM.cc",
        func = 0x974e90 <HttpSM::state_api_callout(int, void*)::__FUNCTION__> "state_api_callout",
        line = 1365
      },
      event = 60000,
      reentrancy = 4
    }, {
      location = {
        file = 0x9701d6 "HttpSM.cc",
        func = 0x974e70 <HttpSM::state_api_callback(int, void*)::__FUNCTION__> "state_api_callback",
        line = 1325
      },
      event = 60000,
      reentrancy = 5
    }, {
      location = {
        file = 0x9701d6 "HttpSM.cc",
        func = 0x974e90 <HttpSM::state_api_callout(int, void*)::__FUNCTION__> "state_api_callout",
        line = 1365
      },
      event = 60000,
      reentrancy = 5
    }, {
      location = {
        file = 0x9701d6 "HttpSM.cc",
        func = 0x975908 <HttpSM::set_next_state()::__FUNCTION__> "set_next_state",
        line = 7332
      },
      event = 34463,
      reentrancy = 5
    }, {
      location = {
        file = 0x985398 "HttpCacheSM.cc",
        func = 0x985a60 <HttpCacheSM::state_cache_open_read(int, void*)::__FUNCTION__> "state_cache_open_read",
        line = 100
      },
      event = 1103,
      reentrancy = -31073
    }, {
      location = {
        file = 0x9701d6 "HttpSM.cc",
        func = 0x975090 <HttpSM::state_cache_open_read(int, void*)::__FUNCTION__> "state_cache_open_read",
        line = 2506
      },
      event = 1103,
      reentrancy = 6
    }, {
      location = {
        file = 0x9701d6 "HttpSM.cc",
        func = 0x974e70 <HttpSM::state_api_callback(int, void*)::__FUNCTION__> "state_api_callback",
        line = 1325
      },
      event = 60000,
      reentrancy = 7
    }, {
      location = {
        file = 0x9701d6 "HttpSM.cc",
        func = 0x974e90 <HttpSM::state_api_callout(int, void*)::__FUNCTION__> "state_api_callout",
        line = 1365
      },
      event = 60000,
      reentrancy = 7
    }, {
      location = {
        file = 0x9701d6 "HttpSM.cc",
        func = 0x975908 <HttpSM::set_next_state()::__FUNCTION__> "set_next_state",
        line = 7292
      },
      event = 34463,
      reentrancy = 7
    }, {
      location = {
        file = 0x9701d6 "HttpSM.cc",
        func = 0x975460 <HttpSM::do_cache_lookup_and_read()::__FUNCTION__> "do_cache_lookup_and_read",
        line = 4527
      },
      event = 59464,
      reentrancy = 5
    }, {
      location = {
        file = 0x9701d6 "HttpSM.cc",
        func = 0x974ff0 <HttpSM::state_hostdb_lookup(int, void*)::__FUNCTION__> "state_hostdb_lookup",
        line = 2227
      },
      event = 500,
      reentrancy = 1
    }, {
      location = {
        file = 0x9701d6 "HttpSM.cc",
        func = 0x975908 <HttpSM::set_next_state()::__FUNCTION__> "set_next_state",
        line = 7441
      },
      event = 34463,
      reentrancy = 1
    }, {
      location = {
        file = 0x985398 "HttpCacheSM.cc",
        func = 0x985a80 <HttpCacheSM::state_cache_open_write(int, void*)::__FUNCTION__> "state_cache_open_write",
        line = 160
      },
      event = 1109,
      reentrancy = -31073
    }, {
      location = {
        file = 0x985398 "HttpCacheSM.cc",
        func = 0x985a80 <HttpCacheSM::state_cache_open_write(int, void*)::__FUNCTION__> "state_cache_open_write",
        line = 160
      },
      event = 2,
      reentrancy = -31073
    }, {
      location = {
        file = 0x9701d6 "HttpSM.cc",
        func = 0x975070 <HttpSM::state_cache_open_write(int, void*)::__FUNCTION__> "state_cache_open_write",
        line = 2388
      },
      event = 1102,
      reentrancy = 1
    }, {
      location = {
        file = 0x9701d6 "HttpSM.cc",
        func = 0x975908 <HttpSM::set_next_state()::__FUNCTION__> "set_next_state",
        line = 7332
      },
      event = 34463,
      reentrancy = 1
    }, {
      location = {
        file = 0x985398 "HttpCacheSM.cc",
        func = 0x985a60 <HttpCacheSM::state_cache_open_read(int, void*)::__FUNCTION__> "state_cache_open_read",
        line = 100
      },
      event = 1103,
      reentrancy = -31073
    }, {
      location = {
        file = 0x0,
        func = 0x0,
        line = 0
      },
      event = 0,
      reentrancy = 0
    } <repeats 44 times>},
  history_pos = 21
}

This is running with current 9.0.x branch, commit ID a709cf17a70edd2454bb, and #6407 PR applied.

I'm trying now without #6407 to see if it's causing this assertion.

That is a very odd history.  It is like the caching logic is being intermingled with the DNS lookup logic.

@sudheerv and @ezelkow1 suggests this assertion is due to fail_action=5, and turning that off confirms. However, then I get another segfault (filing separate issue).

Looks like #6428 eliminates this assert. But, now we're getting a new one, will file another Issue...


Symbols in cheat sheet are broken

Some symbols representing keys like 'up', 'down', etc are broken in my Linux/Electron app.

Do I need to include anything beside hotkeys.css/js ?

Hmm, nope, it's just using unicode for those characters.

So what is possibly wrong here? I can display those characters anywhere else on the app and its fine.

Really hard for me to say without access to the project you're working on.  There are too many situations where this could have been broken downstream of the provided built files.  For example, did you build hotkeys yourself or attempt to minify it or otherwise process it in a way that could strip the unicode?  Perhaps the file was not (at one point or another) stored in UTF-8 format?
Another thing you could try would be replacing the actual unicode characters (such as ⌘) with their escape sequences (⌘ becomes \u2318) in the source, which may prevent inadvertent downstream tampering.

I get via bower and include the hotkeys.css/.js unminified. The app is unminified as well.
The escaped sequence works for me! That is ok as a workaround but I would like to solve that properly.
The file is encoded in UTF-8 though:
bower_components/angular-hotkeys/build/hotkeys.js: HTML document, UTF-8 Unicode text```

If you want to submit a PR, I'm ok with using escape sequences as long as those escape sequences contain comments with the actual unicode (to avoid having to look things up later).

There it is: https://github.com/chieffancypants/angular-hotkeys/pull/181


[HWORKS-939] cleanup implicit provenance

Make sure there is no duplicate PR for this issue

Please check if the PR fulfills these requirements

[ ] Tests for the changes have been added and passed (for bug fixes / features)
[ ] HOPS JIRA issue has been opened for this PR
[ ] All commits have been squashed down to a single commit
[ ] The commit message has the following format: [HOPS-XXX] message

Post a link to the associated JIRA issue

What kind of change does this PR introduce? (Bug fix, feature, docs update, ...)

What is the new behavior (if this is a feature change)?

Does this PR introduce a breaking change? (What changes might users need to make in their application due to this PR?)

Other information:

based on undoing the original PR: https://github.com/AlexHopsworks/hops/commit/0c41419031562a17b682d4b41d1d37c786284899

Can one of the admins verify this patch?


cf push stops working with Eirini after a while (was stats server unavailable)

Describe the bug
Placeholder, per @satadruroy's findings -- we've received a couple reports that when deploying KubeCF with Eirini, the Stratos Metrics will not be able to get consistent results. It points to the status API not working after a bit of time.
To Reproduce

Deploy KubeCF with Eirini
Deploy Stratos Metrics onto it

Workaround: restart the api pod

Reported from the field:
"intermittent failures in doing a cf push with eirini and also losing stats in Stratos:
{
  "error": {
    "statusCode": 503,
    "status": "503 Service Unavailable"
  },
  "errorResponse": {
    "description": "Stats unavailable: Stats server temporarily unavailable.",
    "error_code": "CF-StatsUnavailable",
    "code": 200002
  }
}

A restart of the api-0 pod seems to resolve the issue but it re-appears. The following log messages are seen in the api-0 pod logs when the error happens:
logs 2020/10/30 15:38:28, /var/vcap/sys/log/cloud_controller_ng/nginx-access.log, api.cap.suse.ninja - [30/Oct/2020:15:38:28 +0000] "GET /v2/buildpacks HTTP/1.1" 200 5206 "-" "cf_exporter/0.10.0" <IP_ADDRESS>, <IP_ADDRESS>, <IP_ADDRESS> vcap_request_id:84c558c3-7971-4dc7-54ed-d2ab4d05821d::ea3f8365-7e1f-43bc-b67f-876f898afa29 response_time:0.652
cc-uploader-cc-uploader 2020/10/30 09:33:15 http: TLS handshake error from <IP_ADDRESS>:60090: EOF
cc-uploader-cc-uploader 2020/10/30 09:33:25 http: TLS handshake error from <IP_ADDRESS>:60154: EOF
cc-uploader-cc-uploader 2020/10/30 09:33:35 http: TLS handshake error from <IP_ADDRESS>:60300: EOF
file-server-file-server {"timestamp":"2020-10-30T11:08:09.767831243Z","level":"info","source":"file-server","message":"file-server.static-file.response","data":{"method":"GET","session":"7039","size":174369,"status":200,"uri":"/v1/static/file_server/bin/file-server"}}
cc-uploader-cc-uploader 2020/10/30 09:33:45 http: TLS handshake error from <IP_ADDRESS>:60382: EOF
route-registrar-route-registrar {"timestamp":"2020-10-30T15:32:22.373843280Z","level":"info","source":"Route Registrar","message":"Route Registrar.Registering route","data":{"route":{"Type":"","Name":"policy-server","Port":null,"TLSPort":4002,"Tags":null,"URIs":["api.cap.suse.ninja/networking"],"RouterGroup":"","Host":"","ExternalPort":null,"RouteServiceUrl":"","RegistrationInterval":20000000000,"HealthCheck":null,"ServerCertDomainSAN":"api.cap.suse.ninja"}}}

Not sure if the TLS handshake error is a genuine issue or a red herring.

I was finally able to repro this problem on both AKS and EKS so this is not unique to CaaSP. My setup:
AKS/EKS, Eirini, SA.
Deploy app - works ok. Leave app running overnight.
Check cf app - stats server is unavailable. cf push also fails with the error Stats unavailable: Stats server temporarily unavailable.
I noticed the log-cache pod is now 9/10 with the log-cache-log-cache container reporting not ready. Restarting the pod does not resolve the problem. Restarting the api-0 pod resolves the issue.

Note that TLS handshake error are generally benign. They are the result of various live/readiness probes. The probes are done by opening a connection to the port, and then closing it again. This verifies that the port is reachable and responding. On the server side however this is a TLS handshake violation, as it does not complete the handshake at all, and reported as such.

@mook-as and I have confirmed that the error condition is triggered when log-cache is not ready (by scaling it down to 0 instances) and the CC tries to access app metrics, e.g. by running cf apps, or cf restart, or cf push.
The error persists even when log-cache is scaled back to 1 instance, and the containers are all ready. It is necessary to restart the cloud_controller_ng container in the api pod to restore access to the metrics functionality.

I've now confirmed the same behaviour with Diego (on minikube): scale down log-cache, run cf apps to trigger the error, scale log-cache back up, and metrics remain broken, cf app XXX, cf apps, cf push etc all no longer work.

Should be fixed by #1650 — please reopen if you still see this.
Please note that it can take a while for things to stabilize; a backoff timer is involved, so the longer the log-cache outage was, the longer it will stay broken.  But since in this case it was offline for an unknown period of time, by the time we checked again it should already be fixed.


documentation: Add usage section

Add simple examples on how to make prompt sources and other relevant things.

@cheerio-pixel thanks for the interest but I'm not sure it belongs here. This is standalone library so bringing examples related to Nyxt doesn't seem reasonable.

Makes sense. I could remove the reference to the usage on nyxt but that would make that be similar to the class overview. May as well read the code

Makes sense. I could remove the nyxt part and add a general overview of how things play together but class overview already does that.


feat: update docs and allow specifying temperature

Fixes #39

There seem to be merge conflicts

Resolved

Thank you, that should improve usefulness a lot


Global Configuration Variables for Ollama

I am currently using Ollama for running LLMs locally and am greatly appreciative of the functionality it offers. However, I've come across a point of confusion regarding the global configuration of the Ollama environment, especially when it comes to setting it up for different use cases.
Could you provide more detailed information or documentation on the following aspects:

What are all the global configuration variables available for Ollama, and where can I find a comprehensive list?
Is there a way to set these configurations globally via a YAML file or a similar approach, rather than setting individual environment variables?
If YAML or similar file-based configurations are possible, could you provide an example of how to structure this file for different scenarios (e.g., different models, host configurations)?

Thank you for the feedback.
The environment variables accepted for configuration of Ollama may be found throughout https://github.com/ollama/ollama/blob/main/docs/faq.md#how-do-i-configure-ollama-server. I do see now it is hard to get a quick glance at them all, and so I'll open an issue to add environment docs to ollama -h and possibly the wiki.
Ollama currently has to plans to support a YAML config file.
I hope this helps. Please reopen if I missed something.

You can see a list of environment variables at

https://github.com/ollama/ollama/blob/main/envconfig/config.go

until the docs has been enhanced with this topic.

no help anywhere! had some urgent req for company, compiled this, hope a wandering soul discover this.

Variable
Type
Description
Effect

OLLAMA_HOST
string
Configures the host and scheme for the Ollama server
Determines the URL used for connecting to the Ollama server

OLLAMA_ORIGINS
string
Configures allowed origins for CORS
Controls which origins are allowed to make requests to the Ollama server

OLLAMA_MODELS
string
Sets the path to the models directory
Determines where model files are stored and loaded from

OLLAMA_KEEP_ALIVE
duration
Sets how long models stay loaded in memory
Controls the duration models remain in memory after use

OLLAMA_DEBUG
bool
Enables additional debug information
Increases verbosity of logging and debugging output

OLLAMA_FLASH_ATTENTION
bool
Enables experimental flash attention feature
Activates an experimental optimization for attention mechanisms

OLLAMA_NOHISTORY
bool
Disables readline history
Prevents command history from being saved

OLLAMA_NOPRUNE
bool
Disables pruning of model blobs on startup
Keeps all model blobs, potentially increasing disk usage

OLLAMA_SCHED_SPREAD
bool
Allows scheduling models across all GPUs
Enables multi-GPU usage for model inference

OLLAMA_INTEL_GPU
bool
Enables experimental Intel GPU detection
Allows usage of Intel GPUs for model inference

OLLAMA_LLM_LIBRARY
string
Sets the LLM library to use
Overrides automatic detection of LLM library

OLLAMA_TMPDIR
string
Sets the location for temporary files
Determines where temporary files are stored

CUDA_VISIBLE_DEVICES
string
Sets which NVIDIA devices are visible
Controls which NVIDIA GPUs can be used

HIP_VISIBLE_DEVICES
string
Sets which AMD devices are visible
Controls which AMD GPUs can be used

ROCR_VISIBLE_DEVICES
string
Sets which AMD devices are visible
Alternative way to control which AMD GPUs can be used

GPU_DEVICE_ORDINAL
string
Sets which AMD devices are visible
Another alternative to control AMD GPU visibility

HSA_OVERRIDE_GFX_VERSION
string
Overrides the gfx version for AMD GPUs
Forces a specific graphics version for AMD GPUs

OLLAMA_RUNNERS_DIR
string
Sets the location for runners
Determines where runner executables are located

OLLAMA_NUM_PARALLEL
uint
Sets the number of parallel model requests
Controls concurrency of model inference

OLLAMA_MAX_LOADED_MODELS
uint
Sets the maximum number of loaded models
Limits the number of models that can be simultaneously loaded

OLLAMA_MAX_QUEUE
uint
Sets the maximum number of queued requests
Limits the size of the request queue

OLLAMA_MAX_VRAM
uint
Sets a maximum VRAM override in bytes
Limits the amount of VRAM that can be used

Not sure if this helps, but in version 0.4.2 ollama help <subcommand> lists available envvar configurations (not sure if the list is exhaustive). Note that the list is shown only when help is invoked with a subcommand.
The above table by @nikhil-swamix is more detailed, though!
$ ollama help serve
Start ollama

Usage:
  ollama serve [flags]

Aliases:
  serve, start

Flags:
  -h, --help   help for serve

Environment Variables:
      OLLAMA_DEBUG               Show additional debug information (e.g. OLLAMA_DEBUG=1)
      OLLAMA_HOST                IP Address for the ollama server (default <IP_ADDRESS>:11434)
      OLLAMA_KEEP_ALIVE          The duration that models stay loaded in memory (default "5m")
      OLLAMA_MAX_LOADED_MODELS   Maximum number of loaded models per GPU
      OLLAMA_MAX_QUEUE           Maximum number of queued requests
      OLLAMA_MODELS              The path to the models directory
      OLLAMA_NUM_PARALLEL        Maximum number of parallel requests
      OLLAMA_NOPRUNE             Do not prune model blobs on startup
      OLLAMA_ORIGINS             A comma separated list of allowed origins
      OLLAMA_SCHED_SPREAD        Always schedule model across all GPUs
      OLLAMA_TMPDIR              Location for temporary files
      OLLAMA_FLASH_ATTENTION     Enabled flash attention
      OLLAMA_LLM_LIBRARY         Set LLM library to bypass autodetection
      OLLAMA_GPU_OVERHEAD        Reserve a portion of VRAM per GPU (bytes)
      OLLAMA_LOAD_TIMEOUT        How long to allow model loads to stall before giving up (default "5m")

as i understand from yu's comment, 0.4.2 has good improvement of vars, and original file of go env config seem to be changed, rather improved...
what would be better if a docs page is provided... atleast something like
https://docs.continue.dev/getting-started/install
at this point ive scanned most source of ollama so, maybe not apply to me, but new user definitely benefit from docs, and thousands by the day with the rise of AI!
if any maintainer looking, please let me know if doc page is required. im having a experimental agent which generates doc sites. hoping to make meaningful contrib to ollama.


Error on empty class closed on the same line

I run into the following CSScomb error:
/Users/computer1411/Library/Application Support/Sublime Text 3/Packages/CSScomb/node_modules/csscomb/lib/options/space-after-opening-brace.js:25
        if (node[0][0] === 's') {
                   ^
TypeError: Cannot read property '0' of undefined
    at module.exports.process (/Users/computer1411/Library/Application Support/Sublime Text 3/Packages/CSScomb/node_modules/csscomb/lib/options/space-after-opening-brace.js:25:20)
    at /Users/computer1411/Library/Application Support/Sublime Text 3/Packages/CSScomb/node_modules/csscomb/node_modules/csscomb-core/lib/core.js:206:21
    at Array.forEach (native)
    at processNode (/Users/computer1411/Library/Application Support/Sublime Text 3/Packages/CSScomb/node_modules/csscomb/node_modules/csscomb-core/lib/core.js:202:14)
    at /Users/computer1411/Library/Application Support/Sublime Text 3/Packages/CSScomb/node_modules/csscomb/node_modules/csscomb-core/lib/core.js:211:13
    at Array.forEach (native)
    at processNode (/Users/computer1411/Library/Application Support/Sublime Text 3/Packages/CSScomb/node_modules/csscomb/node_modules/csscomb-core/lib/core.js:202:14)
    at /Users/computer1411/Library/Application Support/Sublime Text 3/Packages/CSScomb/node_modules/csscomb/node_modules/csscomb-core/lib/core.js:211:13
    at Array.forEach (native)
    at processNode (/Users/computer1411/Library/Application Support/Sublime Text 3/Packages/CSScomb/node_modules/csscomb/node_modules/csscomb-core/lib/core.js:202:14)

I have narrowed it down to this line:
 > a {}

This should be an easy fix as it only craps out when the the brackets are on the same line. The following does not throw an error:
 > a {
}

Related to #289.


Improvement of Parse Body

Author should do the followings, if applicable

[x] Add tests
[x] Run tests
[ ] yarn denoify to generate files for Deno

What this PR does

Enhanced the parsing functionality in the Hono framework to properly handle multiple checkboxes.
Resulting selections in the request body are now formatted as selections[] = string[], which aligns with common conventions for handling multiple selections.

This improvement enhances the usability and clarity of the Hono framework when dealing with multiple checkboxes in user requests. Your feedback and review on this pull request are highly appreciated. Thank you!

Hi @bakunya !
This is an awesome improvement! There are two things you should do:

yarn format:fix to fix the formats.
yarn denoify and git add&commit&push the generated file which is required for Deno.

Thanks.

Duplicate #1461


us-in-evansville

Evansville
http://maps.evansvillegis.com/arcgis_server/rest/

(#487 was closed in favor of this issue.)

Has data now, closing.


Create tessolarcharge.py

1st version: Add script to allow charging a Tesla car with excess solar, using PyPowerwall local docker container to get realtime production and consumption data from Tesla Powerwall, and change car charging rate via Tesla API with TeslaPy.
ToDo: add environmental variables, possible add web API endpoints to turn off and on solar charging so that script can be left running indefinitely when car plugged in and do not want to charge.

This is great @venturanc !  Thank you!  We should create some documentation (I can help if you want) by adding a section to:

https://github.com/jasonacox/pypowerwall/blob/main/tools/README.md

Good idea, I'll see if I can add some details to the readme and you can fix anything I leave out? I'll copy the format of the other tools.

Thanks @venturanc ! This is a great addition. 🙏

I'm dumb and left out the requests import when I was copying everything from my test environment so the current version will give an error message if it's run during solar production hours (this is why I shouldn't develop in a Jupyter notebook).  Setting this up from scratch on a new environment and will test when the sun is shining (hopefully tomorrow) and I'll make sure I have it working before submitting an updated PR.  Sorry about that.


turn on --installp-pip test

close #3670

hmm, what's left?

rebase is not helpful

Dig into get-pip.py and found that html parser not works. no links could be parsed from the page https://pypi.org/simple/pip/
I guess we should check html.parser.HTMLParser first.
Test with
> target/release/rustpython get-pip-zip-extracted/__main__.py -vvv install --upgrade --force-reinstall -t site-packages/  pip

specific source at line 353: parser.feed(page.content.decode(encoding)) from get-pip-zip-extracted/_internal/index/collector.py:parse_links().
There is no item in parser.anchor after feed.

Thank you!

try again


adding new item to table and regenerating derivatives not working

don't know if this is by design or not. but new items i added to the table are forcing me to regenerate the whole table.

figured out what the trigger was. the new file had .jpeg instead of .jpg. Not sure if this should be an issue or not. I'll leave it open.


Fix template compiler so it only compiles dirty generator templates

Also make it work with live code reload

There is a bug in the ex_admin compiler. It does not compile all the templates when first generating a resource. If you get a "no templates compiled error", stop and start the app again. If that doesn't work, run mix compile. That should resolve the issue.


added arch model print out

added garch
added function to cut width for coefficient tables

Some more stuff to consider:

checking the results type is also possible with instance, but require the packages to be loaded by the regtabletotext e.g.

import statsmodels
isinstance(results,` statsmodels.regression.linear_model.RegressionResultsWrapper)

default values should be set in function definitions
error when statsmodels results are not from formula, e.g.

import statsmodels.api as sm
import numpy as np
import pandas as pd

# Sample data
X = np.array([1, 2, 3, 4, 5])
y = np.array([2, 3, 4, 4, 5])
X = sm.add_constant(X)  # Add an intercept term
result = sm.OLS(y, X).fit()

prettify_result(result)


Example Pipeline Call

The Usage section
https://github.com/CAMI-challenge/MetagenomeSimulationPipeline/wiki/User-manual#usage should be updated:
e.g.
python metagenome_from_profile.py path/to/16Sprofile

should be
python metagenome_from_profile.py -p path/to/16Sprofile

Yes, thanks, the wiki needs quite an overhaul I think!

Updated this, but wiki still needs some work

Continues in https://github.com/CAMI-challenge/CAMISIM/issues/13, closing this.


reshack.portable fails to install because it has the SHA256 code of the old version 5.1.8

Log:
C:\bin\bin>choco upgrade --yes reshack.portable
Chocolatey v0.11.3
Upgrading the following packages:
reshack.portable
By upgrading, you accept licenses for the packages.
reshack.portable is not installed. Installing...
Progress: Downloading reshack.portable 5.1.8... 100%
Progress: Downloading reshack.portable 5.1.8... 100%

reshack.portable v5.1.8 [Approved]
reshack.portable package files upgrade completed. Performing other installation steps.
Downloading reshack.portable
  from 'http://www.angusj.com/resourcehacker/resource_hacker.zip'
Progress: 100% - Completed download of C:\Users\jeroenp\AppData\Local\Temp\chocolatey\reshack.portable\5.1.8\resource_hacker.zip (3.02 MB).
Download of resource_hacker.zip (3.02 MB) completed.
Error - hashes do not match. Actual value was 'D158BEBC2993CF6BEBF2C23A93572A68544C2BA5AE056538F70A58075C9392D6'.
ERROR: Checksum for 'C:\Users\jeroenp\AppData\Local\Temp\chocolatey\reshack.portable\5.1.8\resource_hacker.zip' did not meet 'c5a0e7f4b8f1089418520562c13d45f8e6fcfff65537830fb166f218b095708c' for checksum type 'sha256'. Consider passing the actual checksums through with --checksum --checksum64 once you validate the checksums are appropriate. A less secure option is to pass --ignore-checksums if necessary.
The upgrade of reshack.portable was NOT successful.
Error while running 'C:\ProgramData\chocolatey\lib\reshack.portable\tools\chocolateyInstall.ps1'.
 See log for details.

Chocolatey upgraded 0/1 packages. 1 packages failed.
 See the log for details (C:\ProgramData\chocolatey\logs\chocolatey.log).

Failures
 - reshack.portable (exited -1) - Error while running 'C:\ProgramData\chocolatey\lib\reshack.portable\tools\chocolateyInstall.ps1'.
 See log for details.

Related https://github.com/AngusJohnson/Image32/issues/14
The reason is that he current http://www.angusj.com/resourcehacker/resource_hacker.zip with ResourceHacker.exe version <IP_ADDRESS>0 has SHA256 D158BEBC2993CF6BEBF2C23A93572A68544C2BA5AE056538F70A58075C9392D6
https://github.com/SebastianK90/chocolateyautomaticpackages/blob/master/reshack.portable/tools/chocolateyInstall.ps1 does the SHA256 value check and needs updating.
Note: I'm not sure what https://github.com/SebastianK90/chocolateyautomaticpackages/blob/master/reshack.portable/update.ps1 is for. Shouldn't it be deleted?

changed update.ps1 to double check the fileversion.
new version is also pushed.
closed.

Thanks a lot!
And thanks for showing me how https://github.com/SebastianK90/chocolateyautomaticpackages/blob/master/reshack.portable/update.ps1 is part of the auto-update mechanism. Splendid!


Pressing 'U' in JEI on TConstruct Sledge Hammer doesn't show JEI's Hammer Tab

It just does nothing.

I had fixed this once already; wonder what broke.

You always give me mysterious bugs; I added two logging statements which do nothing and now it works.
What versions of Creatio and JEI are you using?

Creatio: <IP_ADDRESS>
Jei: <IP_ADDRESS>7
Tconstruct: <IP_ADDRESS>

It appears to be an intermittent issue; are you getting any JEI messages in your log? Could you please post your creatio cfg file.

Creatio.cfg: https://gist.github.com/Insane96/7df721e039551765a8be0c31b66a4342
Nothing in logs

The latest beta I've uploaded to curse has some extra logging included during the JEI plugin loading phase. Would you please start your game and provide me the ex nihilo log.

2019-08-06-0.log
There's the log

So based on that; it is registering the TiCon style hammer as a catalyst. How many TiCon hammers do you see in JEI when it isn't working? Is it just the hammer or is the crook broken too?

Hammers are registered for every material like Tconstruct ones. Same for the crooks

Ok, seems like that sometimes all the Hammers are shown in JEI but pressing 'U' doesn't work and sometimes only the wooden one is showed and pressing 'U' works.

Also found this error checking the log when U works
https://gist.github.com/Insane96/9ed229ff7fcf8ba7d72b937a192a168e

That error is expected and means it is working. I wonder if the issue is the order that jei loads plugins.

But it's strange since sometimes it works, some other doesn't


Dafny Go Compiler emits code compatible with v0/v1, but this library has no v0/v1

Dafny-Go Compiler emits code compatible with v0/v1 github.com/dafny-lang/DafnyRuntimeGo such as _System "github.com/dafny-lang/DafnyRuntimeGo/System_" but this repo has an empty v0/v1 causing the go mod to fail with github.com/dafny-lang/DafnyRuntimeGo/dafny: module github.com/dafny-lang/DafnyRuntimeGo@latest found (v0.0.0-20240628230142-ef4bf9d673db), but does not contain package github.com/dafny-lang/DafnyRuntimeGo/dafny
And v4 is not usable due to https://github.com/dafny-lang/DafnyRuntimeGo/issues/1 .
This renders this whole library unusable and any go mod compatible code emitted by Dafny-Go compiler will fail to compile.

Fixed by https://github.com/dafny-lang/dafny/pull/5826


do not transpile Schedule when execute

When execute with a schedule, a warning that is not going to be transpiled arises. This PR just do not run transpile for a schedule.

on hold. This is not the right fix indeed. I will have a look in an hour! Sorry!

Why does the Schedule even make it to the passmanager if it is not a circuit?

@1ucian0 how is this going?

Why does the Schedule even make it to the passmanager if it is not a circuit? I don't understand what the warning is attempting to convey?

I added the warning because transpile was just returning the argument without changing anything. There was a comment with the text of the warning.
This PR does not even run the transpiler for Schedule. It is ready for review @lcapelluto

This PR does not even run the transpiler for Schedule. It is ready for review @lcapelluto

This is what I was wondering, why the schedule made it to the transpiler.  Thanks for fixing this!


ubuntu (re)start/launch problem (snap) - When ~/Documents is symlink

Describe the bug
rocketchat-desktop starts/launches once and failes all consecutive times when any of {~/Documents, ~/Pictures, ~/Music} is a symlink.

During the first startup rocketchat creates it's config files (in my case in ~/snap/rocketchat-desktop/current/.config)
It then failes to start UNTIL one provides a real directory (no symlink) at the ~/snap/rocketchat-desktop/current/.config/user-dirs.dirs :: XDG_* target paths

In my case ~/Documents (i.e. XDG_DOCUMENTS_DIR) was a symlink

To Reproduce

Revoke rocktechat config (e.g. rm -rf ~/snap/rocketchat-desktop/*)
Make your ~/Documents path a symlink  (e.g. mv ~/Documents ~/Documents_moved && ln -s ~/Documents_moved ~/Documents)
Start rocketchat-desktop once -> everything works just fine (some minor GTK warnings, but well)
Close the electron app
Re-open rocketchat-desktop  app closes without any output i.e. immediately with exit code (echo $?) == 1

Expected behavior
Normal startup even if XDG_DOCUMENTS_DIR is a symlin.
Additional context
Tested with all channel version today including {3.5.5, 3.0.0-develop, 3.2.2}
$ snap info rocketchat-desktop
name:      rocketchat-desktop
summary:   Official Desktop Client for Rocket.Chat
publisher: Rocket.Chat (rocketchat✓)
store-url: https://snapcraft.io/rocketchat-desktop
[...]
channels:
  latest/stable:    3.2.2          2021-05-14 (416) 68MB -
  latest/candidate: 3.3.0-snapshot 2021-06-12 (451) 70MB -
  latest/beta:      3.0.0-develop  2020-09-30 (191) 69MB -
  latest/edge:      3.5.5          2021-09-21 (517) 71MB -
installed:          3.5.5                     (517) 71MB -

Kernel
Linux rock 5.11.0-34-generic
Ubuntu rev
VERSION="20.04.3 LTS (Focal Fossa)"

Quick fix: delete the symlinked folders out of ~/snap/rocketchat-desktop/current/.config/user-dirs.dirs

Please test if the latest release did solve this. If not please reopen the issue or create a new one and tell us. I will be closing this one for now.
Thank you!

Please test if the latest release did solve this.

Hi @jeanfbrito  tested with v3.7.5, symptoms are the same.

please reopen the issue

Github: "you cannot re-open your own issues if a repo collaborator closed them". @jeanfbrito please re-open it.


Update docs and add github action to build

Codecov Report
All modified lines are covered by tests :white_check_mark:

Comparison is base (994fb76) 100.00% compared to head (5a80123) 98.91%.

:exclamation: Current head 5a80123 differs from pull request most recent head d5eb625. Consider uploading reports for the commit d5eb625 to get more accurate results

:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.
Additional details and impacted files
@@             Coverage Diff             @@
##            master     #374      +/-   ##
===========================================
- Coverage   100.00%   98.91%   -1.09%
===========================================
  Files           21       21
  Lines         2209     2207       -2
===========================================
- Hits          2209     2183      -26
- Misses           0       24      +24

see 5 files with indirect coverage changes

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


Want to clear input and NOT show clear-button

I would like to being able to delete a date input by keyboard and NOT showing the clear-button within the picker.
I need that behavior as I dont't think it's very intuitive to clear the input field by having to open the datepicker first. Besides that the clear button might be misleading at some translations (e.g. german).
At the moment the only way to hide the clear-button is to set prop clearable to false, having the "sideeffect" of not accepting an empty input.

Hi Fran,
If you set your initial value to null, the date/time will appear empty until you choose a date/time.
I have added an example to the docs.
-Scott


improve favicons

Changes

dark-mode favicon variants
favicons based on pipeline state if opened build page

Screenshots

we should optimize images with:

https://jakearchibald.github.io/svgomg/
https://tinypng.com/


Implement TCP_NODELAY for CBSD proxy interface

DP Requirement ID: CPI-04
The CBSD proxy interface shall be implemented with a TCP_NODELAY socket so that no extra queuing delay is added between the application and the wire.

to be checked if in the implementations we're aiming at (Contour, nginx) it's possible to limit setting the flat for particular services

Rergarding contour/envoy tandem. TCP_NODELAY flag is set by default inside envoy.
Link to source code: nodelay function call setup
Link to source code: nodelay function

Check/Add same thing for nginx ingress.

#111


add PyString::chars

Useful helper method to avoid allocating anything while iterating over a PyUnicode string. The AsUTF8 methods will allocate and cache the utf8 str on the python heap.
Please consider adding the following to your pull request:

[x] an entry in CHANGELOG.md
[x] docs to all new functions and / or detail in the guide
[x] tests for all new or changed functions

Thanks for the PR :)

The AsUTF8 methods will allocate and cache the utf8 str on the python heap.

it won't if the string is ascii, which most strings are.
calling PyUnicode_AsUTF8/PyUnicode_AsUTF8AndSize caches the utf8 representation (as you mention), so any subsequent calls do not allocate (note that this is not true for PyString::to_str on its slower path - I'll fix that in another PR).

I've benchmarked this method and found that it generally is around twice as slow on ascii strings compared to to_str().chars(). It is only faster if the string is not ascii and long, which is not representative of most strings. For example, https://peps.python.org/pep-0393/ mentions: "out of 36,000 strings (with 1,310,000 chars), 35713 where ASCII strings". I suspect these figures are similar for other applications.

In my benchmarks this is slightly faster. But my usecase is quite specific. I have to modify some unicode chars. So any ascii data just gets returned as is. And all strings passed in are newly allocated and thus have no utf8 string cached.
As it is slower in the general case. Maybe its best to close this.

I see a use case where it forwards to to_str().chars() on ascii strings, but falls back to your method if it's not. The trouble with this approach is that there's no good way to check which representation it has - that information is stored in a  C bitfield 😭 . (See also the documentation of https://pyo3.rs/internal/doc/pyo3/types/struct.PyString.html#method.data)


[FEAT]: Style README.md, CODE_OF_CONDUCT.md, LEARN.md

i think that the readme and learn files lacks some description, i would like to contribute in the same for GSSoc'24

Hi @kanikaa-3018, please proceed. These files are crucial resources for onboarding contributors hence I'm labelling this as high priority task. Feel free to ping me or @ShashankShekhar07 regarding any issues.

hey, @dvjsharma i have raised a pr, pls check and suggest any changes if needed

@dvjsharma man your labels are incorrect, the gssoc label is correct but lsecond label you have to write in small letters and without space like this level1, level2 etc.....


Add new PostgreSQL adapter for node-casbin

At Touchify, we use Casbin for access control over our API.
We allows users to manage their own access control on their projects so we manage a very big policies database.
With this in mind, we built a "native" PostgreSQL adapter for Casbin with improved performances and advanced policy filtering.
Here are the advanced filters:
// Load the filtered policy from DB.
await e.loadFilteredPolicy({
    p: ["regex:(role:.*)|(alice)"],
    g: ["", "like:role:%"]
});

Details:

like: prefix: generates a WHERE clause using LIKE operator on PostgreSQL
regex: prefix: generates a WHERE clause using ~ (regex) operator on PostgreSQL

It allows us to only query the necessaries policies to evaluate the right to increase the evaluation performances.
We hope that this adapter will helps others so we decided to release it in open-source to help your community.
Thanks for this wonderful project!

Thanks for this contribution!

👍


Displayed error text overflow

Seen on android
When the errors summary is displayed, the text overflows on the right of the screen

Fixed by f15171d6214cf435c589caddc3a6ac4dc2a97ffa


Make artifacts available for other compas repositories

There are now 2 repositories in which there is code that depends on classes from core-commons from compas-core repository. After pull requests are merged the artifact should be available for other parts of compas to be used.
Where are think about https://docs.github.com/en/packages or maybe Maven Central to store there artifacts.

Please add documentation for others.

We are using Github packages and in the contribution there is a description about how to used these repositories in a Gradle build.


Cloud Event Resource on pipeline completion

Hello,
This is a follow up on #1922 . I was looking at Cloud Event Resource which can send a request to a target URI upon TaskRun completion.
Is there a similar mechanism for PipelineRun completion too? i,e. I want to receive some API call when a pipeline run completes. I could potentially send a cloud event at the end of the "last" task, but if the pipeline run fails in the middle there's no guarantee that the last task will be executed.
Thanks!
/kind question

I could potentially send a cloud event at the end of the "last" task, but if the pipeline run fails in the middle there's no guarantee that the last task will be executed.

I think that's your best option right now unfortunately! But a couple things are on the way that will make this better:

https://github.com/tektoncd/pipeline/issues/1684 is in progress and will be adding a syntax that you could use to run on failure / as a "finally" + @dibyom @pritidesai @sbwsg
We do want to emit events throughout execution but we don't actually have an issue explicitly about that though it's mentioned in the 2020 roadmap https://github.com/tektoncd/community/pull/77

I've added #2082 about emitting events during execution!

One more thought, @afrittoli created a demo with the functionality you are describing, and I think what he ended up doing was in the case of a failure, he didn't actually fail the Pipeline, he instead "passed" the pipeline but included information about the failure in the CloudEvent, and then the Pipeline that finally handled it (via triggers) was the one that looked at the data and decided whether to fail or not. Definitely not optimal tho!

I could potentially send a cloud event at the end of the "last" task, but if the pipeline run fails in the middle there's no guarantee that the last task will be executed.

I think that's your best option right now unfortunately! But a couple things are on the way that will make this better:

#1684 is in progress and will be adding a syntax that you could use to run on failure / as a "finally" + @dibyom @pritidesai @sbwsg
We do want to emit events throughout execution but we don't actually have an issue explicitly about that though it's mentioned in the 2020 roadmap tektoncd/community#77

Thanks for getting back! The demo that @afrittoli had seems to be a little bit hacky and doesn't seems to be a generalizable solution to apply for different pipelines. I think #1684 with a "finally" block will do the trick :)

This will be addressed as part of https://github.com/tektoncd/pipeline/issues/2082.
We won't be using the pipeline resource for that though.

I'm going to close this in favor of #2082
/triage duplicate
/close


Not able to center image in svg file, inside the viewbox

I am using the load dynamic svg example.   I need to load an image in the top left corner and/or center it in the viewbox.   I have not been able to do it by changing the x and y coordinates and by using center:true option during initialization.   I think there may be a bug, unless someone knows of settings that I am not using.

Please provide a jsfiddle example.
Then I'll reopen the issue.


Google Cast not working when casting to v3 CAF Receiver

Have you read the FAQ and checked for duplicate open issues?
Yes
If the problem is related to FairPlay, have you read the tutorial?

What version of Shaka Player are you using?

v4.7.12
Can you reproduce the issue with our latest release version?
Yes
Can you reproduce the issue with the latest code from main?
Are you using the demo app or your own custom app?
If custom app, can you reproduce the issue using our demo app?
Demo app uses CAF v2, not v3
What browser and OS are you using?
Chrome 123.0.6312.105, Ubuntu 22.04 LTS
For embedded devices (smart TVs, etc.), what model and firmware version are you using?
What are the manifest and license server URIs?

https://sherazadelibrary.org/test-stream/stream2/master.mpd
What configuration are you using?  What is the output of player.getConfiguration()?

Default Shaka UI config from https://shaka-player-demo.appspot.com/docs/api/tutorial-ui.html
(Exact same code, except for receiver ID which is 9EC644F7)
Hosted on https://sherazadelibrary.org/shaka-player/cast-test.html
What did you do?

Cast video from https://sherazadelibrary.org/shaka-player/cast-test.html
Using Google codelabs Receiver demo
What did you expect to happen?
Receiver playing video with subtitles.
What actually happened?

When the device opens the Receiver the video is not being loaded

The shortest way to reproduce this issue is to run this in the console of the Shaka Pleyr demo:
video.ui.configure({'castReceiverAppId': chrome.cast.media.DEFAULT_MEDIA_RECEIVER_APP_ID})

Then load and cast a video.  You will see that the Shaka Player sender API is not compatible with the standard receiver.
However, the Shaka Player sender API was always intended to cast to a custom receiver app using the Shaka Player receiver API.  It has never worked with the default receiver.
The Shaka cast APIs are deprecated and will be removed in favor of direct Cast support in the Shaka Player UI.  This support will be compatible with the default receiver for content that the default receiver can play.  (Currently this excludes DRM content, but I am now responsible for the default receiver, too, so this limitation could be lifted.)
For now, I'm going to call this WAI from Shaka's point of view.  You can use the cast APIs in Shaka v4 on both sides, or you can use the Cast Sender SDK directly and use a non-Shaka receiver.


HealthCheck Module implementation for Redis/ElasticSearch persistences

This is currently a work in progress, i suggest it to be a feature or an example in the documentation depending of the broad usage of people since "healthy" may not mean the same thing for everyone
Context: We use conductor in k8s env and we wanted a single endpoint to check the readiness/liveness of conductor and the stack built around it. The aim is to prevent access to conductor if part of the stack are degraded and raise an event with a readable error.
Process: I saw that the route /api/health was exposed but didn't find any implementation or mention in the documentation. Then i found health-api doc on https://github.com/Netflix/runtime-health and started to implement two modules for the main persistence.
So feel free to give me your feedback on package naming or HealthIndicator's implementations !

Pull Request Test Coverage Report for Build 4276

0 of 0   changed or added relevant lines in 0 files are covered.
19 unchanged lines in 3 files lost coverage.
Overall coverage decreased (-0.1%) to 69.54%

Files with Coverage Reduction
New Missed Lines
%

mysql-persistence/src/main/java/com/netflix/conductor/dao/mysql/MySQLBaseDAO.java
3
69.32%

cassandra-persistence/src/main/java/com/netflix/conductor/dao/cassandra/CassandraEventHandlerDAO.java
8
68.42%

cassandra-persistence/src/main/java/com/netflix/conductor/dao/cassandra/CassandraMetadataDAO.java
8
55.44%

Totals

Change from base Build 4272:
-0.1%

Covered Lines:
12472

Relevant Lines:
17935

💛  - Coveralls

@apanicker-nflx Added tests. Do you think it is better to move out com.netflix.conductor.server.resources.HealthCheckResource from jersey module into a dedicated module ?

HealthCheck is moving to a Spring component so no need for the com.netflix.runtime.health.api implementation.
https://github.com/Netflix/conductor/blob/5d874b878d4c1a10bad6de7278e663096771e3ec/rest/src/main/java/com/netflix/conductor/rest/controllers/HealthCheckResource.java#L23-L32


Refactor to reduce use of action filters

Hi All,
Putting this up for PR early as its not actually work related to this branch! This is a refactor of the team_members/pagination_controller and the files which extend it.
The aim here is to increase the overall readability of the code to increase the overall maintainability. Please let me know if you think if this achieves this - and also see if my changes have broken anything!
I think I've manually tested all the functionality but it is likely I've missed something or made a last minute change and not fully retested!
Questions and comments encouraged!

This breaks the Journal Entry View Logs index and also the Crisis Events index as you're relying on the classes that extend the pagination controller to call the count and limit_resources functions at the end of their resources function which you haven't then implemented for these controllers, this also breaks the abstraction as count and limit resources are supposed to be universal for paginated indexes so any logic relating to them shouldn't exist at the subclass level.
Overall I don't think this refactor is a good one as it doesn't improve readability, it's much easier to read:
:this_should_happen, :then_this, :then_this ... before ... :this_action
than it is to hop around the functions and figure out who is in charge of calling what i.e. why does last_page get called by limit_resources? Why is limit being called in multiple places when it should only require 1 operation to set the limit from the query param?

Thanks for spotting the View Logs and Crisis Events bugs - they will need fixing before this gets merged.
Why should count and limit resources be universal? From the way I understand it, they look at the resources which have just been set, count the total and then limit it down to the number which should be rendered in the index. To me that's directly related to the @resources variable and as such should be close to them in the code.
They could be extracted back to the pagination controller above the "render or redirect" line - presuming we stick with this approach.
More generally, I still strongly disagree that it is easier to read with the filters in place. Previously we had this as the filters before the index action on the wellbeing assessment controller:
    before_action :query_params, :page, :query, :limit, :offset, :team_member, :wellbeing_assessments, only: :index

    before_action :resources, only: :index, unless: -> { @query.present? }
    before_action :search, only: :index, if: -> { @query.present? }

    before_action :count, :last_page, :limit_resources, :redirect, only: :index

and this in the parent pagination controller:
    before_action :query_params, :page, :query, :multiple, :limit, :offset, :resources,
                  :count, :last_page, :limit_resources, :redirect, only: :index

This was the key section of code I was unhappy with. It's not clear to me what variables are being set and a lot of the filters are intrinsically linked.
One of the main issues I encountered is that I wanted to add the :user filter after ':team memberand beforewellbeing_assessmentsand everything else gets called. However, we also have the linebefore_action :user, :wellbeing_metrics, only: %i[new create]which overwrites the:user` call when its used as an index action filter. With the filters in their original state I am unaware of a way to get the order of operations to run correctly.
What I have tried to do with the refactor is group intrinsically linked method calls together so, although if you need to delve into every section of the code you might do a little bit more "hopping around" but you should be able to see what the index method is doing in a more glance-able way.
The two sections above have changed to:
def index
    team_member
    user
    query_params[:query].present? ? search : resources
    super
end

Which, to me, clearly says, get team member, get user, if there's a query then search, else get resources, then do the parent action:
 def index
    @page = page
    @query = query_params[:query]
    multiple unless @multiple
    resources unless @resources
    @resources.present? ? render('index') : redirect
end

to me this is clear: set page variable, set query variable, if multiple hasn't already been set, then set it, if resources haven't already been set then do that method, then if there are resources render index, else redirect.
You might be right about the limit resource, I'll see if there is any performance difference between these approaches. Same goes for the last_page call, that's probably not in the correct place, it might be better at the end of the limit function. I'll take another look at those.
Overall, I still am much happier with this general approach.
Does what I've explained above sway your position at all @IeuanSkinner ?
@AlexW555, @garethdandrews, @bmhtech07, do you have any thoughts on this? What do you feel is easier to read and understand?

So for anything that's paginated theres going to be some kind of resource that is getting displayed within a page hence why we have those resources set by the subclass as that class knows what the resource is. The way you count those resources once instantiated is always the same it's always @count = @resources.count and the way you limit those resources is again always the same it's @resources = @resources.offset(@offset).limit(@limit) hence what I mean by "universal" as it doesn't matter what the resource is, the operation is always the same.
What your refactor is doing is requiring every subclass to now have the 2 lines
    @count = count
    limit_resources

at the end of the resources function which means every subclass is going to duplicate these lines.
If I'm understanding correctly you want a route of /users/:user_id/wellbeing_assessments like we have for team members which provides the index view of wellbeing assessments filtered by user? The confusion being that user is currently set in one before_action filter for new and create actions but now we want it happening before the index too which has these chained actions as some actions are dependant on each other (limit depends on multiple, offset depends on limit etc.).
This is really simple as the user is constructed from query params so isn't dependent on any code having evaluated so you only need to extract the user setup to before the other actions.

Using this as a guide I've put together a refactor here.


Mention new templates.xml memory settings in troubleshooting section

Fixes https://trac.openmicroscopy.org.uk/ome/ticket/12527

Final change looks good, any further review needed?

Is this ready to merge @sbesson ?

Assuming you are happy with it, I am not planning any additional change.

Looks fine to me, merging.

Does this need rebased?

--rebased-to #1107


Fix the Rogue DHCP validation

The first commit fixes the validation on RHEL by using a virtualenv instead of relying on pip being available (it's not).
That uncovered two issues with reporting errors back to the API which are fixed in the remaining two comments.
You can verify the last comment by running the ntpstat validation. Without the commit it just returns "failed" with no explanation. With it, you'll see the command it tried to run and it's stderr.

Now that the rogue_dhcp.py file  is not an ansible module anymore, maybe it would be better to move it to the files directory.

Good point about files. I wanted to do that but forgot.
And you're right that the file doesn't have to be copied to the virtualenv, but it should be copied onto the host (even the undercloud validations may be run from another host). And I figured -- we've already created a temp dir, might as well drop it there.
Is there a location you'd like more?

You could use the script module (http://docs.ansible.com/ansible/script_module.html) and set the rogue_dhcp.py's shebang to point to your virtualenv's python. I think that would be cleaner than copying the file yourself.

That sounds good. We'd have to hardcode the virtualenv path though, wouldn't we? Or did you mean having rogue_dhcp.py be a jinja template and set the shebang?

Make it a j2 template if you want to be fancy, but I think it's fine just hardcoding it since I don't see the script being used somewhere else.

Fair enough :-). Just wanted to be sure what you meant.

@mandre updated.


Custom Asteroids only works till KSP 0.90

As users reported having no significant issues with this mod in 1.0.4 I'm not inclined to reduce its compatibility beyond that ksp version.

Well the author told me it didn't work anymore since 1.0.x, this also is said on the forum thread of the mod:
UPDATE: I am back, and eager to resume work on Custom Asteroids. The mod is NOT KSP 1.0 compatible at the moment; I'll remove this message when a new version is ready.

Yeah I read what he wrote. I also read what users previously wrote and they report no significant issues up to 1.0.4. Our duty first is to end-users and if they're reporting a mod works we're doing them a disservice to disallow them access to it.

Ok, I restricted it to 1.0.4. I also saw that @Starstrider42 has made a 1.0.5 pre-release, so expecting a release soon

:+1:


Remove Ord instances for crypto keys

The pattern that our crypto libraries use is that they deliberately do not provide Ord instances for keys (verification or signing keys). Instead our crypto library encourage the use of comparisons on key hashes.
This patch removes Ord instances for keys and signatures. It removes Eq instances for signing keys. It keeps Eq instances for verification keys and signatures.
Update the ledger and cardano-prelude dependencies to use the crypto classes that also remove these instances and constraints.

Ah, CI is failing unfortunately (although I secretly expected it would :smiling_imp:)

bors r+

bors r+


Images and media: Remove, replace

Individual pages do not currently support images or media. If this feature is added, individuals will need an interface to easily replace or remove images or media that they have added to their page.

Designs: https://www.figma.com/file/AXufBnFAVHvGdsxnQMVhNF/The-Accessibility-Exchange-Wireframes?node-id=1315%3A18469&t=87IPtwy0eqwGcNLI-1


Constraints in sfl4j integration are too strong

Hi! Thanks for the library, it looks really cool and works very well, including the slf4j integration (I'm only starting with it though).
I noticed the constraints the slf4j binder requires are a bit strong: Timer and ConcurrentEffect are requiested, even though they're only used for toIO (Effect) and Clock (current time). We might as well just pass these, and we wouldn't even need an ExecutionContext for the cats-effect 2.x instance.
I'll gladly contribute that if you agree :)

Hi @kubukoz
Thanks for the feedback. I agree, and it's an easy fix https://github.com/valskalla/odin/pull/171
Will release 0.8.1 once it's merged

Done

Thanks!

btw. the same applies to Timer in DefaultLogger - we also only need Clock.
Loosening this constraint would be really nice too, as we could get rid of the EC requirement in slf4j completely.

That is a bit trickier and depends on cats-effect. There was a conflict between deriving Clock from Timer and the rest of Clock implicits for different data types. It was fixed in https://github.com/typelevel/cats-effect/commit/1cbf8ca7fce7f2d907e546d8082c32c461c1a731#diff-8caacbebb3a4edd3e3545d4f79f3ba67
But still waiting for that 2.2 release.


We need write pseudocode component

we need to write code(pseudo code) for component which will show identified problems
And focus the description of all the problems

Happening over at https://github.com/css-components/comparison!


Refactored test classes

Pull Request Information
Relates to Github Issue: #175
What is the PR Type:
refactoring
Describe the added/fixed behaviour:

Rearranged tests into AAA pattern (Arrange, Act, Assert) for consistency across classes
Removed redundant code
Added comments for tests

Checklist

[x] Pull request has suitable title, adequately described and associated with a github issue
[x] Branch name follows correct convention (e.g. feature/[id]-some-feature)
[x] Branch builds and executes with no errors
[x] Test cases has been generated for the feature and test cases pass
[x] Updated relevant wiki/documentation

closes #182


Block web crawlers on v1.4-branch

Google keeps surfacing links from very old versions of the Kubeflow docs website, which is confusing to users.
This PR adds the <meta name="robots" content="noindex"> meta tag to tell Google to stop indexing the pages from the v1.4-branch branch.
It will take probably a few months (or longer) for Google to re-index these pages, I have left nofollow off, so that google will re-index the whole site quicker by following links.

It also backports the changes from https://github.com/kubeflow/website/pull/3863 so the version selector is consistent across each archive version.

/lgtm


Help tooltips in the config UI

Description
I think that our config ui is hard to understand from a new user perspective. I would like to see several things clarified in the application in the form of tool tips and an interactive tutorial. I believe this will greatly increase adoption and make our producto look more professional.
Possible Help Sections
...Too many to list
Describe the solution you'd like
The application will have a complete new feature for user help or tooltips
Has the Feature been Requested Before?
No
Describe alternatives you've considered
We could just have text everywhere but it will not look good
Additional context
Add any other context or screenshots about the feature request here.
Looking for approval to start this. @hezyin

Sounds good. I will not do any QA on the current version then. Maybe we should tell our users about this in the readme or the site somewhere in the meantime to better communicate with the community.


Populate buildTarget/displayName

This PR populates display name in BuildTarget which is currently null.
Creating unique names is a bit fiddly as BSP considers each source set a separate target and unique whereas Gradle considers each project unique.  I've added a test for this.

Display name in Metals is shown as a user-friendly way to navigate build targets.
There is a project explorer which, after this PR, displays as...

There is also a "Doctor" page to show what Metals thinks about the project setup...

And finally you can get info on each build target...

I can also see a case where someone has written a command line BSP client and a user might want to manage the build through it.  In that case they could write something simple like bsp compile model model-test.  Without these display names, they'd have to type the entire build target uri which is long and not user-friendly.

I've made the changes - should be good to merge now


NSProgress addChild:withPendingUnitCount is not valid on OSX unit test run

This works fine on ours and through xcode.
we are having issues of the selector not being present when ran through xcode.
since it's available only on 10.11 and when we compile it on OSX for unit tests it's not available.

#836 is getting around this


Can’t install app as the name within the app states (null)

As the title states I can’t install the app irregardless of the method of installation because the name states it is (null) which is preventing the installation.

Installation help will not be handed in github. Please contact the community for support.


B4C defaults to a 0.9 TD fraction

This isn't really a Problem, but it is unexpected, inconsistent, and potentially troublesome.
The B4C class has a built-in non-unity theoretical density fraction that is applied by default when the material is constructed:
https://github.com/terrapower/armi/blob/37f547940501d5e55978cac2fdba37e10fbae0ff/armi/materials/b4c.py#L117-L145
This non-unity fraction is used whenever the material density is queried:
https://github.com/terrapower/armi/blob/37f547940501d5e55978cac2fdba37e10fbae0ff/armi/materials/b4c.py#L160-L178
There is also the ability to specify the theoretical density fraction using the TD_frac material modification, which is a good thing:
https://github.com/terrapower/armi/blob/37f547940501d5e55978cac2fdba37e10fbae0ff/armi/materials/b4c.py#L31-L52
The bad part about that is that all other material classes return a fully-dense material by default. If you want a version of the material with lower density, generally you should use the associated material modification TD_frac. But for B4C, you actually need to use TD_frac to get a full-density material. So this means that the B4C class is inconsistent with our other materials, but it is not documented as such.
I did want to change this as part of #1114 , but since it would be an API-breaking change and it proved a bit more challenging than expected, I decided to just report it here for future work instead. B4C, being as ubiquitous as it is, is used allllllll over our repos, and this could be tricky to implement a change.

B4C is a ceramic and ceramics are always manufactured at less than their max theoretical density. B4C in particular is typically around 90%. This is a lot different from typical metals and coolants and stuff.  I still feel that it's reasonable to use a typical B4C TD as the default. I think the big concern otherwise is that if you default to a physically impossible full TD B4C beginners may think their rod worth is a lot higher than it actually is.
I do agree that it should be more clearly documented.

Based on Nick's comment above, I would prefer to leave B4C as-is, and add a comment/docstring explaining the matter.
@keckler Thoughts?

Totally fine with the solution being better documentation. Let's go with that.
I will point out, however, that we don't do the same for other ceramics which suffer from the same physical reality that they are difficult to produce at 100% TD (UO2, ThO2, MOX). So I still view this as inconsistent and somewhat confusing.
I'll go put a comment in the docstring!


Support "import" as a first class change type for people using terraform 1.5+

Terraform 1.5 made import a first class citizen. Links below

https://developer.hashicorp.com/terraform/language/import
https://www.virtualizationhowto.com/2023/07/terraform-import-existing-resource-ultimate-guide/

As of now, even though terraform plan command shows something like the following(note the no. of imports) but this tool does not show the list of import changes that are going to be applied
Plan: 22 to import, 0 to add, 6 to change, 0 to destroy.

Fix has been merged and release. Can we close this issue @kishaningithub  ?

Yes we can 👍😊


Colorbox breaks Mediaelement in all browsers with all media files.

There are few reports on various issues with colorbox/shadowbox etc. Just to sum it up, having Mediaelement embedded on-the-fly into any of those breaks ME completely be it FLV with swf player or MP4. It is bit hard to test on local because it seem to work when video file is cached, so we didn't even notice the issues prior to upload.
All in all, unable to find the solution, we are just using another Flash player for both FLV and MP4 to be opened in Colorbox.

@firedev Is this still an issue? If not, can you close this issue, please?


net: segmentation violation calling C getaddrinfo

Please answer these questions before submitting your issue. Thanks!
What version of Go are you using (go version)?
[root@fabcoin bcp]# go version
go version go1.8.1 linux/amd64
What operating system and processor architecture are you using (go env)?
GOARCH="amd64"
GOBIN=""
GOEXE=""
GOHOSTARCH="amd64"
GOHOSTOS="linux"
GOOS="linux"
GOPATH="/root/bcp/golang"
GORACE=""
GOROOT="/usr/local/go"
GOTOOLDIR="/usr/local/go/pkg/tool/linux_amd64"
GCCGO="gccgo"
CC="gcc"
GOGCCFLAGS="-fPIC -m64 -pthread -fmessage-length=0 -fdebug-prefix-map=/tmp/go-build441318668=/tmp/go-build -gno-record-gcc-switches"
CXX="g++"
CGO_ENABLED="1"
PKG_CONFIG="pkg-config"
CGO_CFLAGS="-g -O2"
CGO_CPPFLAGS=""
CGO_CXXFLAGS="-g -O2"
CGO_FFLAGS="-g -O2"
CGO_LDFLAGS="-g -O2"
What did you do?
run a go script on
LSB Version:    :core-4.1-amd64:core-4.1-noarch:cxx-4.1-amd64:cxx-4.1-noarch:desktop-4.1-amd64:desktop-4.1-noarch:languages-4.1-amd64:languages-4.1-noarch:printing-4.1-amd64:printing-4.1-noarch
Distributor ID: RedHatEnterpriseServer
Description:    Red Hat Enterprise Linux Server release 7.3 (Maipo)
Release:        7.3
Codename:       Maipo
If possible, provide a recipe for reproducing the error.
A complete runnable program is good.
A link on play.golang.org is best.
What did you expect to see?
no segmentation violation, the same code run on
LSB Version:    :core-4.1-amd64:core-4.1-noarch:cxx-4.1-amd64:cxx-4.1-noarch:desktop-4.1-amd64:desktop-4.1-noarch:languages-4.1-amd64:languages-4.1-noarch:printing-4.1-amd64:printing-4.1-noarch
Distributor ID: RedHatEnterpriseWorkstation
Description:    Red Hat Enterprise Linux Workstation release 7.3 (Maipo)
Release:        7.3
Codename:       Maipo
works.
What did you see instead?
see file attached
signal_SIGSEGV__segmentation_violation_code_0x1_addr_0x63_pc_0x7fa8cda23259.txt

Do you have a small program that reproduces the crash that you can share?
Does the crash happen on tip?

Does this happen every time you run the program?

The line numbers in your stack trace match the Go 1.7 sources, not the Go 1.8 sources.

You are actually correct, the container is running
go version
go 1.6
Are there any known segment violation issues with that version?

@eragnoli Go 1.6 is no longer supported - it's not even getting security fixes. Please use 1.8.x instead.
I'm going to close this, as this would be digging up bugs that were probably fixed in 1.7 or 1.8.


--site-packages does not seem to be respected after 2018.7.1.

Issue description
When upgrading from 2018.7.1 -> 2018.11.26, we noticed an inconsistency in our automated builds regarding a few packages which were installed at site packages and were being pulled in via the --site-packages flag.
The following docker command fails with an import exception when the python command is run. Note that requests is being installed at site packages and not in the Pipfile, intentionally.
Docker Command 1 (Fails)
docker run -w "/root/" -it python:2 bash -c "pip install requests && pip install --upgrade pipenv==2018.11.26 && pipenv --site-packages run python -c 'import requests; print(requests.__version__)'"

Expected result
When I run the identical command (using the older version of pipenv):
Docker Command 2 (Succeeds)
docker run -w "/root/" -it python:2 bash -c "pip install requests && pip install --upgrade pipenv==2018.7.1 && pipenv --site-packages run python -c 'import requests;print(requests.__version__);'"

produces the expected output:
.
.
[... long output omitted ... ]
.
.
Creating a virtualenv for this project...
Pipfile: /root/Pipfile
Using /usr/local/bin/python (2.7.15) to create virtualenv...
⠋Already using interpreter /usr/local/bin/python
New python executable in /root/.local/share/virtualenvs/root-BuDEOXnJ/bin/python
Installing setuptools, pip, wheel...
done.
Setting project for root-BuDEOXnJ to /root

Making site-packages available...
Virtualenv location: /root/.local/share/virtualenvs/root-BuDEOXnJ
2.21.0

Actual result (from Docker Command 1)
.
.
[... long output omitted ... ]
.
.
Creating a virtualenv for this project...
Pipfile: /root/Pipfile
Using /usr/local/bin/python (2.7.15) to create virtualenv...
⠸ Creating virtual environment...Already using interpreter /usr/local/bin/python
New python executable in /root/.local/share/virtualenvs/root-BuDEOXnJ/bin/python
Installing setuptools, pip, wheel...
done.

✔ Successfully created virtual environment!
Virtualenv location: /root/.local/share/virtualenvs/root-BuDEOXnJ
Creating a Pipfile for this project...
Traceback (most recent call last):
  File "<string>", line 1, in <module>
ImportError: No module named requests

Steps to replicate

Run Docker Command 1, listed above.

Other Information

I ran this test for several different versions -- it appears the behavior cropped up after 2018.10.9, leading me to speculate it has to do with the changes introduced in: #2518.
Ran identical tests with the python:3 docker image, with essentially the same results
I found it interesting to note that the failing command does not include the phrase Making site-packages available... that the successful command does.

$ pipenv --support
Pipenv version: '2018.11.26'
Pipenv location: '/usr/local/lib/python2.7/site-packages/pipenv'
Python location: '/usr/local/bin/python'
Python installations found:

3.5.3: /usr/bin/python3.5
3.5.3: /usr/bin/python3.5m
2.7.15: /usr/local/bin/python
2.7.13: /usr/bin/python2.7

PEP 508 Information:
{'implementation_name': 'cpython',
 'implementation_version': '0',
 'os_name': 'posix',
 'platform_machine': 'x86_64',
 'platform_python_implementation': 'CPython',
 'platform_release': '4.9.125-linuxkit',
 'platform_system': 'Linux',
 'platform_version': '#1 SMP Fri Sep 7 08:20:28 UTC 2018',
 'python_full_version': '2.7.15',
 'python_version': '2.7',
 'sys_platform': 'linux2'}

System environment variables:

LANG
PYTHONIOENCODING
TERM
GPG_KEY
PYTHON_VERSION
PIP_DISABLE_PIP_VERSION_CHECK
SHLVL
PYTHON_PIP_VERSION
HOSTNAME
PYTHONDONTWRITEBYTECODE
PWD
PIP_SHIMS_BASE_MODULE
PATH
PYTHONFINDER_IGNORE_UNSUPPORTED
HOME
PIP_PYTHON_PATH
_

Pipenv–specific environment variables:
Debug–specific environment variables:

PATH: /usr/local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
LANG: C.UTF-8
PWD: /root

Same here.
For those needing a workaround with the current version (2018.11.26), somehow starting a virtualenv with pipenv --site-packages --three (and only after pipenv install) works (instead of using pipenv --site-packages install from pipfile to start the environment).

@Marviel @n-batalha Can you try against the master branch to confirm if it still exists?

I believe this is resolved on master as of #3836, closing now.  Do let us know if this persists in the next release


QuickSelect Algorithm

I want to write a C++ implementation for the QuickSelect algorithm, it is a quicksort based algorithm used for finding the nth smallest number in an unordered list. I am a GSSoC '21 participant.
@rudrakshi99 @nakul-19 @plazzy99 please assign me this task.

Hello, I would like to contribute to this project in "c++ language" with help of "min heap".
->with O(nlogn) time complexity
->with O(1) space complexity
I am a GSsoc'21  participant.
waiting for a positive response.

Hello,
I would like to contribute to this issue in "Java" as a GSSoC 2021 participant
kindly assign me the issue

Hello @tarun26091999 @dheerajkotwani @esheetaparulekar @anubhavitis @jeelnathani, I think this is an important question and this should definitely be added in the Algo-Tree and I will start working on it as soon as I get assigned!! as I am a part of GSSoC'21, so I would like to implement this in c++.

@sanatRR @amanduttbhagat solve it in O(n) time.


Extra Flags don't affect players with max permissions (*) and ops

Any extra flags (like applying an effect on region enter) don't apply to anyone with worldguard permissions.
They do apply after a restart, however. After another restart, it's back to "broken". It's a never ending cycle.
Works just fine with all the other players without permissions.
Reproduction steps:

Install the plugin
Make a region and set an extra flag (Like a potion effect)
The flag will affect only the player without the worldguard permissions
After a restart it will affect all the players
After another restart it's back to "broken"

I use the latest version of the plugin with the latest Paper with Java 11 on Linux.
Thank you in advance for your help.

Experiecing the same problem...

Experiecing the same problem...

Any extra flags (like applying an effect on region enter) don't apply to anyone with worldguard permissions.
They do apply after a restart, however. After another restart, it's back to "broken". It's a never ending cycle.
Works just fine with all the other players without permissions.
Reproduction steps:
* Install the plugin

* Make a region and set an extra flag (Like a potion effect)

* The flag will affect only the player _without_ the worldguard permissions

* After a restart it will affect all the players

* After another restart it's back to "broken"

I use the latest version of the plugin with the latest Paper with Java 11 on Linux.
Thank you in advance for your help.
Hello, Sorry for the long wait I found this on the official spigot page

Flag is not working:
Make sure you do not have permissions for the following permission node:
worldguard.region.bypass...
Also make sure you have use-player-move-event set to true in WorldGuard config.
Please also note that if you are OP you have all the permissions, meaning that you are bypassing every flag the plugin provides. This can look like the plugin is not working.
Also /rg bypass doesn't work, at least yet.

Working as intended, the permissions are mentioned on the plugin page.
However, there are changes coming in the future.


Duplicate files installed bumping up install size by ~190M

The current install is ~816M as seen in the docker images, with ~20% duplicate files. It may be worth cleaning up the install (preferably by reworking the install script) if anyone wants to reduce container sizes:
(
    cd /usr/local;
    join -j1 -t' ' \
        <(find . -type f | xargs md5sum --binary | cut -d' ' -f1 | sort | uniq --repeated) \
        <(find . -type f | xargs md5sum --binary | sort) \
    | awk 'last != $1 {
            printf ": "
            system( "echo " size * (count - 1) " | numfmt --to=iec" );

            cmd="stat -c %s " substr($2, 2);
            cmd | getline size;
            last=$1;
            count=0;
        }

        {
            count++;
            printf "%s ", substr($2, 2);
        }

        END {
            printf "total duplicated size: "
            system( "echo " size * (count - 1) " | numfmt --to=iec" );
        }
        '
) | sort -t: -h -k2

Gives a total of 190M duplicated:
: 0
./heron/conf/examples/roundrobin_packing.yaml ./heron/conf/mesos/client.yaml : 800
./heron/conf/local/client.yaml ./heron/conf/sandbox/client.yaml : 984
./heron/conf/aurora/client.yaml ./heron/conf/marathon/client.yaml : 1.1K
./heron/conf/kubernetes/uploader.yaml ./heron/conf/nomad/uploader.yaml : 1.2K
./heron/conf/slurm/statemgr.yaml ./heron/conf/yarn/statemgr.yaml : 1.2K
./heron/include/spout/irich-spout.h ./heron/include/topology/irich-spout.h : 1.3K
./heron/include/spout/base-rich-spout.h ./heron/include/topology/base-rich-spout.h : 1.5K
./heron/bin/heron-apiserver ./heron/bin/heron-apiserver.sh : 1.6K
./heron/conf/kubernetes/stateful.yaml ./heron/conf/nomad/stateful.yaml : 1.6K
./heron/conf/localzk/client.yaml ./heron/conf/slurm/client.yaml ./heron/conf/yarn/client.yaml : 1.8K
./heron/include/spout/ispout-output-collector.h ./heron/include/topology/ispout-output-collector.h : 2.5K
./heron/conf/local/scheduler.yaml ./heron/conf/localzk/scheduler.yaml ./heron/conf/sandbox/scheduler.yaml : 2.7K
./heron/bin/heron-downloader-config ./heron/bin/heron-downloader-config.sh ./heron/dist/heron-core/bin/heron-downloader-config ./heron/dist/heron-core/bin/heron-downloader-config.sh : 2.8K
./heron/conf/local/stateful.yaml ./heron/conf/localzk/stateful.yaml ./heron/conf/sandbox/stateful.yaml : 3.3K
./heron/bin/heron-downloader ./heron/bin/heron-downloader.sh ./heron/dist/heron-core/bin/heron-downloader ./heron/dist/heron-core/bin/heron-downloader.sh : 3.6K
./heron/conf/local/statemgr.yaml ./heron/conf/marathon/statemgr.yaml ./heron/conf/mesos/statemgr.yaml ./heron/conf/sandbox/statemgr.yaml : 4.0K
./heron/conf/local/healthmgr.yaml ./heron/conf/sandbox/healthmgr.yaml ./heron/conf/yarn/healthmgr.yaml : 4.4K
./heron/conf/local/uploader.yaml ./heron/conf/localzk/uploader.yaml ./heron/conf/mesos/uploader.yaml ./heron/conf/sandbox/uploader.yaml ./heron/conf/slurm/uploader.yaml : 4.7K
./heron/conf/marathon/stateful.yaml ./heron/conf/mesos/stateful.yaml ./heron/conf/slurm/stateful.yaml ./heron/conf/yarn/stateful.yaml : 4.9K
./heron/include/spout/ispout.h ./heron/include/topology/ispout.h : 5.6K
./heron/conf/aurora/downloader.yaml ./heron/conf/examples/downloader.yaml ./heron/conf/kubernetes/downloader.yaml ./heron/conf/local/downloader.yaml ./heron/conf/localzk/downloader.yaml ./heron/conf/nomad/downloader.yaml ./heron/conf/sandbox/downloader.yaml ./heron/conf/yarn/downloader.yaml total duplicated size: 7.7K
./heron/conf/aurora/packing.yaml ./heron/conf/kubernetes/packing.yaml ./heron/conf/local/packing.yaml ./heron/conf/localzk/packing.yaml ./heron/conf/marathon/packing.yaml ./heron/conf/mesos/packing.yaml ./heron/conf/nomad/packing.yaml ./heron/conf/sandbox/packing.yaml ./heron/conf/slurm/packing.yaml ./heron/conf/yarn/packing.yaml : 9.1K
./heron/conf/local/heron_internals.yaml ./heron/conf/sandbox/heron_internals.yaml : 13K
./heron/conf/aurora/heron_internals.yaml ./heron/conf/examples/heron_internals.yaml ./heron/conf/localzk/heron_internals.yaml ./heron/conf/marathon/heron_internals.yaml ./heron/conf/mesos/heron_internals.yaml ./heron/conf/slurm/heron_internals.yaml ./heron/conf/yarn/heron_internals.yaml : 74K
./heron/conf/aurora/metrics_sinks.yaml ./heron/conf/local/metrics_sinks.yaml ./heron/conf/localzk/metrics_sinks.yaml ./heron/conf/marathon/metrics_sinks.yaml ./heron/conf/mesos/metrics_sinks.yaml ./heron/conf/sandbox/metrics_sinks.yaml ./heron/conf/slurm/metrics_sinks.yaml ./heron/conf/yarn/metrics_sinks.yaml : 76K
./heron/dist/heron-core/lib/statemgr/heron-localfs-statemgr.jar ./heron/lib/statemgr/heron-localfs-statemgr.jar : 5.7M
./heron/dist/heron-core/lib/scheduler/heron-scheduler.jar ./heron/lib/scheduler/heron-scheduler.jar : 7.8M
./heron/dist/heron-core/lib/scheduler/heron-local-scheduler.jar ./heron/lib/scheduler/heron-local-scheduler.jar : 8.0M
./heron/dist/heron-core/lib/scheduler/heron-marathon-scheduler.jar ./heron/lib/scheduler/heron-marathon-scheduler.jar : 8.0M
./heron/dist/heron-core/lib/scheduler/heron-slurm-scheduler.jar ./heron/lib/scheduler/heron-slurm-scheduler.jar : 8.0M
./heron/dist/heron-core/lib/statemgr/heron-zookeeper-statemgr.jar ./heron/lib/statemgr/heron-zookeeper-statemgr.jar : 11M
./heron/dist/heron-core/lib/packing/heron-binpacking-packing.jar ./heron/lib/packing/heron-binpacking-packing.jar ./heron/lib/scheduler/heron-binpacking-packing.jar : 12M
./heron/dist/heron-core/lib/packing/heron-roundrobin-packing.jar ./heron/lib/packing/heron-roundrobin-packing.jar ./heron/lib/scheduler/heron-roundrobin-packing.jar : 12M
./heron/dist/heron-core/lib/metricscachemgr/heron-metricscachemgr.jar ./heron/lib/metricscachemgr/heron-metricscachemgr.jar : 13M
./heron/dist/heron-core/lib/scheduler/heron-mesos-scheduler.jar ./heron/lib/scheduler/heron-mesos-scheduler.jar : 14M
./heron/dist/heron-core/lib/scheduler/heron-nomad-scheduler.jar ./heron/lib/scheduler/heron-nomad-scheduler.jar : 15M
./heron/dist/heron-core/lib/scheduler/heron-kubernetes-scheduler.jar ./heron/lib/scheduler/heron-kubernetes-scheduler.jar : 36M
./heron/dist/heron-core/lib/downloaders/heron-downloader.jar ./heron/lib/downloaders/heron-downloader.jar : 45M

most of which (182.9M) is between /usr/local/heron/lib/ and /usr/local/heron/dist/heron-core/lib/
$ (
    for dir in /usr/local/heron/lib/ /usr/local/heron/dist/heron-core/lib/; do
        (cd "$dir" && find . -type f -exec sh -c 'ls -sh {} | tail -n1' \; )
    done
) | sort | uniq --count --repeated
      2 11M ./statemgr/heron-zookeeper-statemgr.jar
      2 13M ./metricscachemgr/heron-metricscachemgr.jar
      2 14M ./scheduler/heron-mesos-scheduler.jar
      2 15M ./scheduler/heron-nomad-scheduler.jar
      2 36M ./scheduler/heron-kubernetes-scheduler.jar
      2 45M ./downloaders/heron-downloader.jar
      2 5.7M ./packing/heron-binpacking-packing.jar
      2 5.7M ./packing/heron-roundrobin-packing.jar
      2 5.7M ./statemgr/heron-localfs-statemgr.jar
      2 7.8M ./scheduler/heron-scheduler.jar
      2 8.0M ./scheduler/heron-local-scheduler.jar
      2 8.0M ./scheduler/heron-marathon-scheduler.jar
      2 8.0M ./scheduler/heron-slurm-scheduler.jar

Is the script accounting for symlinks? I believe some of the contents in /heron are symlinks to another location.

Is the script accounting for symlinks? I believe some of the contents in /heron are symlinks to another location.

Is the script accounting for symlinks? I believe some of the contents in /heron are symlinks to another location.

Good question, but not in these cases. find doesn't follow symlinks by default and the first script has both finds starting from the same place so that won't find duplicates. The second starts at different places, but there are no symlinks in the path of /usr/local/heron/lib and /usr/local/heron/dist/heron-core/lib`.
Here's all the symlinks that exist in case it helps a clean up:
# made during heron-install.sh
ln -s /usr/local/heron/bin/heron{,-apiserver,-explorer,-tracker,-ui} /usr/local/bin/

# made in the Dockerfile
ln -s /usr/local/heron/dist/heron-core /heron/
ln -s /usr/local/heron/{examples,release.yaml} /heron/
ln -s /usr/local/heron/{bin,conf,dist,lib,release.yaml /heron/heron-tools/

Is the script accounting for symlinks? I believe some of the contents in /heron are symlinks to another location.

Good question, but not in these cases. find doesn't follow symlinks by default and the first script has both finds starting from the same place so that won't find duplicates. The second starts at different places, but there are no symlinks in the path of /usr/local/heron/lib and /usr/local/heron/dist/heron-core/lib`.
Here's all the symlinks that exist in case it helps a clean up:
# made during heron-install.sh
ln -s /usr/local/heron/bin/heron{,-apiserver,-explorer,-tracker,-ui} /usr/local/bin/

# made in the Dockerfile
ln -s /usr/local/heron/dist/heron-core /heron/
ln -s /usr/local/heron/{examples,release.yaml} /heron/
ln -s /usr/local/heron/{bin,conf,dist,lib,release.yaml /heron/heron-tools/


i18n(zh-tw): update guides/deploy/cloudflare.mdx

Description (required)
update guides/deploy/cloudflare.mdx.
Related issues & labels (optional)

Relates to #9240
Suggested label:

Lunaria Status Overview
🌕 This pull request will trigger status changes.

Learn more
By default, every PR changing files present in the Lunaria configuration's files property will be considered and trigger status changes accordingly.
You can change this by adding one of the keywords present in the ignoreKeywords property in your Lunaria configuration file in the PR's title (ignoring all files) or by including a tracker directive in the merged commit's description.

Tracked Files

File
Note

zh-tw/guides/deploy/cloudflare.mdx
Localization changed, will be marked as complete.

Warnings reference

Icon
Description

🔄
The source for this localization has been updated since the creation of this pull request, make sure all changes in the source have been applied.


[SPARK-37292][SQL][FOLLOWUP] Simplify the condition when removing outer join if it only has DISTINCT on streamed side

What changes were proposed in this pull request?
Simplify the condition when removing outer join if it only has DISTINCT on streamed side with alias. See: https://github.com/apache/spark/pull/34557#discussion_r748005299.
Why are the changes needed?
Simplify the code.
Does this PR introduce any user-facing change?
No.
How was this patch tested?
Existing unit test.

Test build #145168 has started for PR 34573 at commit 26b1cd7.

Kubernetes integration test starting
URL: https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder-K8s/49638/

cc @viirya

Kubernetes integration test status failure
URL: https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder-K8s/49638/

Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder-K8s/49638/

Test build #145168 has finished for PR 34573 at commit 26b1cd7.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Thanks @wangyum @dongjoon-hyun ! Merging to master.

Maybe my network issue? I did dev/merge_spark_pr.py but it doesn't response:
% dev/merge_spark_pr.py
git rev-parse --abbrev-ref HEAD

Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/145168/