Updating Animation Parameters Mid-Animation

Say you want to move something from Point A to Point B, but while it's moving, it now needs to continue on through B to C.
Is there a way to accomplish this currently?
Doing it in the animateWithCompletion block results in a stop and go..
(The functionality is built into UIView animateWithDuration w/ the UIViewAnimationOptionBeginFromCurrentState option)

At the moment no way to do this. Will consider for a future release


r? @rust-highfive to reassign a review randomly (again)

When a PR is first opened, highfive randomly assigns its review to someone. Based on https://github.com/rust-lang/highfive/blob/master/highfive/configs/rust-lang/rust.json#L10 it looks like this is based on what files/directories the PR modifies. This is all good.
Sometimes, for a variety of possible reasons, the review an already-open PR needs to be reassigned to someone else. Typically what happens is that the person doing this navigates the appropriate team’s page under https://www.rust-lang.org/governance/ and picks someone at semi-random. It would be nice to have a way to ask highfive to auto-assign again, like it did when the PR was first opened:

This is fewer steps for the person who decided that reassigning was needed
In some cases we have deliberate differences between team membership and auto-assigned reviewers

Ideally highfive would in that case pick someone different from the first time on that particular PR. However running the same algorithm again would be good already: there are usually enough reviewers to choose from that picking the same twice in a row is unlikely, and if it happens we can simply give the command again.
The exact command to trigger this is less important. I initially though of r? @rust-highfive (we "assign" to highfive the responsibility to reassign someone else), https://github.com/rust-lang/highfive/issues/189 proposed r? _retry or r? _

This has come up many more times since it was reported. It'd be really helpful to have this kind of "random reassign" mechanism, for several different teams.


Not set up the BotChat object until the UI is opened

Hi,
We are using BotFramework Webchat v0.13.1 to attach a webchat UI on a customer webpage. The webchat UI is attached using plain Javascript (not ReactJS). Also, we did some CSS modifications so that the Webchat UI starts minimized as a bot icon and expands to the normal state when the user clicks on it.
Our aim is to initialize the BotChat.App() after the bot icon gets clicked. Is there a way to do this using plain Javascript? It would be helpful if you could share some sample code too.
NOTE: We are aware that in BotFramework Webchat v4.2.0 can do this with ReactJS but at the moment we can't update the customer webpage to support a ReactJS based Webchat.
Thanks in advance! :)

@kosset you can just call BotChat.App() when the "bot icon" is clicked (but don't call it more than once). Although we have a sample in v4, it is doing a bit more than that:

Lazy-load Web Chat UI (you can do it in v3, v4, with/out React)
Show a red dot when a message come when UI is minimized (you can do it in v3, v4, with/out React too)

It is easier to code it using v4, because we expose Web Chat as API, we don't expose API in v3

We are sunsetting v3, so we have no plans to write samples for v3.

Hi @kosset,
Please let us know if you have any questions or concerns (via your customer) about upgrading to v4 of Web Chat. We understand that it's a large undertaking, but we hope to enable all of our customers to make the jump with as few pain points as possible.
Unfortunately Web Chat doesn't support lazy loading of the bot.

I am scrubbing thru the issues and come with #941.
I think in order to minimize effort for developers, we can think about using #941 to show one of the many good UX to lazy-load Web Chat.

Closing due to inactivity.


refactor(Topology/Category): refactor Profinite.Basic

This is the second part of the refactor of CompHaus and friends (refactoring the definition of Profinite in terms of CompHausLike, see #12930 for the end result)

[x] depends on: #13904
[x] depends on: #13905
[x] depends on: #13907
[x] depends on: #13908

bors merge


Maximum Concurrent Request -- round-robin or sample  multiple vLLMs

I would like to inquire about the concurrent request capacity of an NVIDIA A100 80 GB GPU when employing the Llama-2-13b model with full document capabilities within the H2OGPT ecosystem for production purposes. Specifically, I am interested in understanding the optimal level of concurrency attainable when operating on a local server, with a primary focus on achieving low latency and maximising throughput. And How can we dividing the request on multiple instances of A100 GPU & what should be the max _batch_size?
How much GPUs power required to serve like 100 requests concurrently when running Llama-2-13b model?

Hi, sorry for late response.  Busy preparing for conference.
vLLM is best option for concurrency, and can handle a load of about 64 queries, so we tend to set h2oGPT's concurrency to 64 when feeding an LLM using vLLM based upon A100.

Thanks for your response. I  successfully integrate vllm engine INFO 11-09 10:14:03 llm_engine.py:72] Initializing an LLM engine with config: model='meta-llama/Llama-2-13b-chat-hf', tokenizer='hf-internal-testing/llama-tokenizer', tokenizer_mode=auto, revision=None, tokenizer_revision=None, trust_remote_code=False, dtype=torch.float16, max_seq_len=4096, download_dir=None, load_format=auto, tensor_parallel_size=1, quantization=None, seed=1234) INFO 11-09 10:14:25 llm_engine.py:207] # GPU blocks: 3802, # CPU blocks: 327
for inference through Llama-2-13b-chat-hf with user_data inside h2ogpt ecosysteem.
Starting get_model: meta-llama/Llama-2-13b-chat-hf vllm:<IP_ADDRESS>:5000
Now I want to know how this vllm engine handle maximum concurrent request and should i hit the following command for serving 64 requests parallelly python generate.py --inference_server="vllm:<IP_ADDRESS>:5000" --base_model=meta-llama/Llama-2-13b-chat-hf  --score_model=None --langchain_mode='UserData' --user_path=user_path --use_auth_token=True --max_seq_len=4096 --max_max_new_tokens=2048 --max_batch_size=16 --concurrency_count=64
or there is any other methods?

Yes, that --concurrency_count=64 is the right option to ensure requests hitting h2oGPT are concurrent without queue up to 64 requests.   vLLM itself has no limit, so h2oGPT will push up to 64 to it.
As I mentioned, 64 for a single vLLM 13B  might be a bit tough on it.  We've seen vLLM have connection errors sometimes under load, so it would be wise to use 2+ 13Bs if possible and round-robin them in the way I described.

@pseudotensor @llmwesee
I'm the maintainer of LiteLLM we implemented a request queue for making LLM API calls (to any LLM)/ Our queue can handle 100+ request/second
I believe this makes it easier to manage multiple vLLM deployments + request queuing. I'd love your feedback if not
Here's a quick start on this:
docs: https://docs.litellm.ai/docs/routing#queuing-beta

Add Redis credentials in a .env file

REDIS_HOST="my-redis-endpoint"
REDIS_PORT="my-redis-port"
REDIS_PASSWORD="my-redis-password" # [OPTIONAL] if self-hosted
REDIS_USERNAME="default" # [OPTIONAL] if self-hosted

Start litellm server with your model config

$ litellm --config /path/to/config.yaml --use_queue

Here's an example config for gpt-3.5-turbo
config.yaml (This will load balance between OpenAI + Azure endpoints)
model_list:
  - model_name: gpt-3.5-turbo
    litellm_params:
      model: gpt-3.5-turbo
      api_key:
  - model_name: gpt-3.5-turbo
    litellm_params:
      model: azure/chatgpt-v-2 # actual model name
      api_key:
      api_version: 2023-07-01-preview
      api_base: https://openai-gpt-4-test-v-1.openai.azure.com/

Test (in another window) → sends 100 simultaneous requests to the queue

$ litellm --test_async --num_requests 100

Available Endpoints

/queue/request - Queues a /chat/completions request. Returns a job id.
/queue/response/{id} - Returns the status of a job. If completed, returns the response as well. Potential status's are: queued and finished.


Error: Id not found by [["@deep-foundation/deepcase"]]

5m 45s
Run npm run migrate
><EMAIL_ADDRESS>migrate
> npm run package:build && npx migrate@latest up --matches '*.js'
><EMAIL_ADDRESS>package:build
> tsc --project tsconfig.json
ok
ok
(node:4813) ExperimentalWarning: Importing JSON modules is an experimental feature and might change at any time
(Use `node --trace-warnings ...` to show where the warning was created)
  up :<PHONE_NUMBER>782-links.js
  up :<PHONE_NUMBER>790-selectors-cache.js
  up :<PHONE_NUMBER>560-auto-indexes.js
  up :<PHONE_NUMBER>572-materialized-path.js
  up :<PHONE_NUMBER>592-type-mp.js
  up :<PHONE_NUMBER>000-reserved-links.js
  up :<PHONE_NUMBER>250-values.js
  up :<PHONE_NUMBER>256-types.js
admin 380
  up :<PHONE_NUMBER>258-selectors.js
  up :<PHONE_NUMBER>259-can.js
  up :<PHONE_NUMBER>260-permissions.js
  up :<PHONE_NUMBER>753-jwt.js
  up :<PHONE_NUMBER>573-packager.js
  up :<PHONE_NUMBER>590-promises.js
  up :<PHONE_NUMBER>040-demo.js
  up :<PHONE_NUMBER>869-sync-handlers.js
  up :<PHONE_NUMBER>281-authorization.js
  up :<PHONE_NUMBER>151-handlers.js
  up :<PHONE_NUMBER>992-unvalue.js
  up :<PHONE_NUMBER>601-hasura-storage.js
  up :<PHONE_NUMBER>544-core-symbols.js
  up :<PHONE_NUMBER>200-tsx.js
  up :<PHONE_NUMBER>209-deepcase.js
  up :<PHONE_NUMBER>677-npm-packager.js
  up :<PHONE_NUMBER>209-deepcase.js
  error : Error: Id not found by [["@deep-foundation/deepcase"]]
Error: Id not found by [["@deep-foundation/deepcase"]]
    at DeepClient.<anonymous> (file:///home/runner/work/deeplinks/deeplinks/imports/client.js:799:23)
    at Generator.next (<anonymous>)
    at fulfilled (file:///home/runner/work/deeplinks/deeplinks/imports/client.js:4:58)
    at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
Error: Process completed with exit code 1.

This error occurs because installation of @deep-foundation/deepcase fails.
One of the reason might be, that someone didn't use npm run npm-release command when new release of deepcase was published, meaning that deep.json is not synchronized with package.json, that gives error on installation of @deep-foundation/deepcase.

Regression is detected at https://github.com/deep-foundation/deepcase/commit/0d24e965fd1592c29981baa778182478de7d4f9f

Attempted to fix the regression using npm run package:release (source)at https://github.com/deep-foundation/deepcase/commit/8223dd46c7dc351f75550981453b6f7b6727c17b commit.

Fixed at https://github.com/deep-foundation/dev/commit/d3ab08badb419d4f6da3b85644cbdaa78120ccb4


POA added, deploys endpoint, registry, secret registry contracts.

Very simple changes. POA added, deploys endpoint, registry, secret registry contracts.

@palango check this pull request please! Thank you

@palango @loredanacirstea sorry about that. New commits are up, should be fixed now!

Looks better now, please just squash together the commits into a single one.

@palango done!

@anmolshl Looks good. Please give the commit a better desciption, then we can merge this.

@palango commit description changed.


about iff-net

Hi author, I noticed that you only have the program to train dpsl in your project, what should I do if I just want to train iff-net without dpsl?

Hi, thanks for interest. Please see https://github.com/YUCHEN005/DPSL-ASR/blob/master/espnet2/layers/iff_net.py for network code of iffnet


Refactor into structured files

Why?

Smaller files are easier to digest and edit

What Changed

Refactored single monolithic file into smaller, namespaced classes and files
The only code change is that Error now inherits from StandardError instead of Exception

Hmm, after going through this a few times I guess I'm ok with it, not convinced it actually makes it easier to edit but it's a judgement call. Some of the nodes and root logic are big enough that this is helpful, but all the module nesting and tiny 1-line classes make it less so. Overall, it's fine with me though feels unnecessary—but, if this makes it easier for you and people to contribute then I'm 👍
The one thing I'd like to change is to revert the changes with errors—1) remove the Errors:: namespace and keep errors nested inside the Swagger::Blocks:: namespace so that they don't change, 2) don't split errors by file, if you do split out errors put them all in one file. Let's keep the  StandardError change, that's positive.

Thanks for looking over the PR. I had some of the same feelings as well, but ultimately felt that the code would be easier to work on this way.
I went ahead and removed the namespace from the Errors and moved them all into a single file.

Yea, I agree it's not completely necessary, but it matches the pattern that most other gems use, so I think it just feels a bit cleaner.

Thanks for contributing! Would you two like to take on the v1.2 code deletion as well? Then I can prep a 2.0.0 release of this gem.

Yeah I/we are looking into doing that in the near future.


Highlight features in histogram buckets on the map.

Highlight features in histogram buckets on the map, which involved moving histogram bucketing closer to the UI code. Draw the bucketed areas underneath buildings, although this will have to become feature type dependent in future.

Example:


CLOUD-654 - don't set defaults in CR

Test name
Status

big-data
passed

scheduled-backup
passed

storage
passed

haproxy
passed

recreate
passed

scaling
passed

upgrade-haproxy
passed

self-healing
passed

self-healing-chaos
passed

scaling-proxysql
failed

init-deploy
passed

restore-to-encrypted-cluster
passed

upgrade-proxysql
passed

self-healing-advanced
passed

self-healing-advanced-chaos
passed

limits
passed

security-context
passed

demand-backup
passed

monitoring-2-0
passed

smart-update
passed

operator-self-healing
passed

operator-self-healing-chaos
passed

affinity
passed

one-pod
passed

auto-tuning
passed

pitr
passed

proxysql-sidecar-res-limits
passed

users
passed

upgrade-consistency
failed

demand-backup-encrypted-with-tls
passed

tls-issue-self
passed

tls-issue-cert-manager
passed

tls-issue-cert-manager-ref
passed

validation-hook
passed

commit: https://github.com/percona/percona-xtradb-cluster-operator/pull/1039/commits/2ddf612d690ac11e6881021de9cad194485647ae
image: perconalab/percona-xtradb-cluster-operator:PR-1039-2ddf612d

Test name
Status

scheduled-backup
passed

big-data
passed

upgrade-haproxy
passed

storage
passed

scaling
passed

recreate
passed

haproxy
passed

self-healing
passed

self-healing-chaos
failed

init-deploy
passed

restore-to-encrypted-cluster
passed

upgrade-proxysql
passed

scaling-proxysql
passed

self-healing-advanced
passed

self-healing-advanced-chaos
failed

limits
passed

operator-self-healing
passed

operator-self-healing-chaos
failed

security-context
passed

demand-backup
passed

monitoring-2-0
passed

smart-update
passed

affinity
passed

one-pod
passed

auto-tuning
passed

pitr
passed

proxysql-sidecar-res-limits
passed

users
passed

upgrade-consistency
passed

demand-backup-encrypted-with-tls
passed

tls-issue-self
passed

tls-issue-cert-manager
failed

commit: https://github.com/percona/percona-xtradb-cluster-operator/pull/1039/commits/18f1497eace4b82c245ab52253565b20e43543f9
image: perconalab/percona-xtradb-cluster-operator:PR-1039-18f1497e

Test name
Status

storage
passed

self-healing
passed

self-healing-chaos
passed

upgrade-haproxy
passed

scheduled-backup
passed

recreate
passed

restore-to-encrypted-cluster
passed

demand-backup
passed

pitr
passed

demand-backup-encrypted-with-tls
passed

haproxy
passed

big-data
passed

init-deploy
passed

limits
passed

monitoring-2-0
passed

affinity
passed

one-pod
passed

scaling
passed

auto-tuning
passed

scaling-proxysql
passed

proxysql-sidecar-res-limits
passed

security-context
passed

users
passed

tls-issue-self
passed

tls-issue-cert-manager
passed

upgrade-proxysql
passed

tls-issue-cert-manager-ref
passed

smart-update
passed

upgrade-consistency
passed

validation-hook
passed

self-healing-advanced
passed

self-healing-advanced-chaos
passed

operator-self-healing
passed

operator-self-healing-chaos
passed

commit: https://github.com/percona/percona-xtradb-cluster-operator/pull/1039/commits/18f1497eace4b82c245ab52253565b20e43543f9
image: perconalab/percona-xtradb-cluster-operator:PR-1039-18f1497e


add CLI to only generate extension properties

to match https://github.com/OSGeo/gdal/pull/6265

changed my mind, I don't think we need/want this


Code workflow

This pipeline configuration builds the application and produces a build for the Release configuration.

 Thank you for your submission, we really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.:x: foxj77 sign nowYou have signed the CLA already but the status is still pending? Let us recheck it.


OpenSearch Indexing doesn't create any data in index. Empty index exisits[Bug]:

Bug Description
I am building an app to use Opensearch as vecotr store with Llamaindex using this example. Here is the code I have
endpoint = getenv("OPENSEARCH_ENDPOINT", "http://localhost:9200")
 idx = getenv("OPENSEARCH_INDEX", "gpt-index-demo")

 UnstructuredReader = download_loader("UnstructuredReader")

 loader = UnstructuredReader()
 documents = loader.load_data(file=Path(file_name))

 # OpensearchVectorClient stores text in this field by default
 text_field = "content"
 # OpensearchVectorClient stores embeddings in this field by default
 embedding_field = "embedding"
 # OpensearchVectorClient encapsulates logic for a
 # single opensearch index with vector search enabled
 client = OpensearchVectorClient(endpoint, idx, 1536, embedding_field=embedding_field, text_field=text_field)
 # initialize vector store
 vector_store = OpensearchVectorStore(client)
 # initialize an index using our sample data and the client we just created
 index = GPTVectorStoreIndex.from_documents(documents=documents)

The confusion I am having is that when we create OpensearchVectorClient, we are not passing any documents and then when we initialize index, we do not pass vector_store, nor is there a eligible field to pass this by looking at the definition of GPTVectorStoreIndex.from_documents(). So, how does the document gets to Opensearch index?
Version
0.6.19
Steps to Reproduce

Used the code above but index in Opensearch is empty
Code seems to be using default vector store

Relevant Logs/Tracbacks
No response

This example from the docs seems to be a little out of date. I thiiiiink it should look something like this
from llama_index import StorageContext
... # existing code is valid

# create the new index
storage_context = StorageContext.from_defaults(vector_store=vector_store)
index = GPTVectorStoreIndex.from_documents(documents, storage_context=storage_context)
...
# re-connect to the index later in v0.6.21.post1
index = GPTVectorStoreIndex.from_vector_store(vector_store)


GLTF Material not matched

The GLTF material not matched with some files.while the gltf file materials not empty,but some primitive material_id == -1,these primitives used the last of materials.
I found in founction void Model::LoadMaterials(const tinygltf::Model& gltf_model, const ModelCreateInfo::MaterialLoadCallbackType& MaterialLoadCallback) create default material only when the gltf file no materials:
if (Materials.empty())
{
    // Push a default material for meshes with no material assigned
    Materials.push_back(Material{});
}

in function https://github.com/DiligentGraphics/DiligentTools/blob/fe2bc14c747314a6924fc59c6782a4697b5c6473/AssetLoader/interface/GLTFBuilder.hpp#L356
NewMesh.Primitives.emplace_back(
IndexStart,
IndexCount,
VertexCount,
GltfPrimitive.GetMaterialId() >= 0 ? static_cast(GltfPrimitive.GetMaterialId()) : static_cast(m_Model.Materials.size() - 1),
PosMin,
PosMax //
);
just use the last material while Primitive mateiral_id < 0, so these primitives display error

Can you provide a model that reproduces this problem?

this is a gltf file display error in GLTF Viewer
basic_sample_new_material.zip
trees and car colored red,as below

but they are no materials,in three.js like this:


Develop/manual

@tkokada Thank you for updating the document! :)
How about respectively changing the titles How to run examples and Abstract of examples to Getting started and Overview?


How to set local_file of Media Source

Description:
It's not clear from documentation how to set local_file of Media Source. There is a remark about similar in #164 but obs.send() does not appear to be available anymore.
Versions Used (if applicable):

obs-websocket-js version: 5.0.2
obs-websocket plugin version: 5.0.1
obs-studio version: 28.1.2
node version: 14

It appears this can be achieved now via:
await obs.call('SetInputSettings', {
      inputName: 'inputName',
      inputSettings: {
          looping: true,
          is_local_file: true,
          local_file: '/path/to/file.mp4'
      }
  })


Should we allow setting pageScale?

My initial draft has scrollLeft and scrollTop as writable but pageScale as read-only. On reflection, a writable scroll offset seems pointless without a writable pageScale. We should either make them all read-only or all writable.

I am not sure if writable scrollTop/scrollLeft is entirely pointless since a site may want to adjust things based on a changed page scale (by the user).
In any case, I agree that making pageScale writable can be useful.

+1 for scrollTop, scrollLeft, and pageScale all being writable.


Add Views and Define Routes to Access Them

Tutorials: https://developers.sap.com/tutorials/sapui5-101-add-routing.html
the codes are incorrekt

Hi Shuhhrat,
I'm sorry you're having an issue. So that we can better assist you, would you mind sharing what trouble you are running into? What steps are creating the issue? Which code snippet is creating the issue? Screenshots of any errors would be helpful as well.
Kind regards,
Conrad (SAP UX Engineering)

Thank you for your feedback. We haven't heard from you in the past 30 days, so we are closing the issue.
If you still have questions, feel free to reopen the issue.


Letting user pick between phone or email 2fa in "AspNetIdentity_2fa" sample based application?

I'm just looking for some general guidance on how to go about implementing the following feature. I have an IdSvr3 application based on the "AspNetIdentity_2fa" sample. If the user has 2fa enabled and has an email and a phone number I'd like to show him a page that lets him choose between sending the code to either phone or email. What's the general approach of showing a page in between the initial login page and the page that let's user enter the code sent to him?

To take over the UI workflow from the user service you return a partial login. You can send the user to as many pages as you want before returning back into IdentityServer.

OK, thank you. I have to look into a partial login. As soon as I figure that out I'll close this issue.


Added timelimit to CBiRRT constructor

Previously it was only possible to set timelimit by passing it to an individual planning call.

LGTM. 👍


Add initial selection section

Add initial selection section; note in earlier section the change from kdf to kdf2 so this way the selection section can make use of kdf.

@garawalid Here's the PR for the Selection section, any concerns if I continue with other sections or there are other sections you would prefer I tackle?

@dennyglee thanks! I'll update my sections with the new version 0.3.0.
Please be my guest, pick any section and let me know.
Let's try to finish it asap.

@dennyglee would you mind solve the conflict.
I'll merge it if you are done.


"update" option has the potential to break an Arch Linux system

By issuing that alias one will set an Arch Linux system up for a partial upgrade system:
https://wiki.archlinux.org/title/System_maintenance#Partial_upgrades_are_unsupported
The only time one would want to update a single package before doing a full system upgrade is explained here:
https://wiki.archlinux.org/title/Pacman/Package_signing#Upgrade_system_regularly
Please remove that option ASAP from your script, since it has no use and will potentially break an Arch Linux system if not immediately followed by a full system upgrade.

Thanks for the tip, removed it


Remove obsolete ink_inet_addr function.

ink_inet_addr is obsolede and unused, so we can remove it.

[approve ci autest]

[approve ci autest]


Updated outdated content from bug bash in docs.microsoft.com for Key Vault

Check with @chlowell for bug bash content

Closing this issue as we have not found any reference to the older Key Vault packages from any of the docs under https://docs.microsoft.com/en-us/azure/key-vault/general/


Demote h1 in NotificationsPanel

NotificationsPanel currently uses h1 as a heading. Most of our components should probably use h2 or h3 at highest. Comparable components such as the SidePanel and novice-to-pro panel that @paul-balchin-ibm is looking into will use h2 which may be a more appropriate heading level.

[ ] Replace h1 tag in NotificationsPanel with h2

can i work on this


fix(optimizer): skip subquery optimization if no apply

I hereby agree to the terms of the RisingWave Labs, Inc. Contributor License Agreement.
What's changed and what's your intention?

Related https://github.com/risingwavelabs/risingwave/issues/13459

Checklist

[ ] I have written necessary rustdoc comments
[ ] I have added necessary unit tests and integration tests
[ ] I have added test labels as necessary. See details.
[ ] I have added fuzzing tests or opened an issue to track them. (Optional, recommended for new SQL features #7934).
[ ] My PR contains breaking changes. (If it deprecates some features, please create a tracking issue to remove them in the future).
[ ] All checks passed in ./risedev check (or alias, ./risedev c)
[ ] My PR changes performance-critical code. (Please run macro/micro-benchmarks and show the results.)

[ ] My PR contains critical fixes that are necessary to be merged into the latest release. (Please check out the details)

Documentation

[ ] My PR needs documentation updates. (Please use the Release note section below to summarize the impact on users)

Release note
If this PR includes changes that directly affect users or other significant modifications relevant to the community, kindly draft a release note to provide a concise summary of these changes. Please prioritize highlighting the impact these changes will have on users.

subquery_unnesting CPU reduces from 3.9% to 0.1%


Fix "partially relocatable" warnings on rpm package generation

CMake CPack is complaining about the package being partially relocatable while building RPMs because some of the files for fpgad are not being installed on the “Prefix” for the packages (CMAKE_INSTALL_PREFIX). Hence the package is partially relocatable which means that if a user tried to install the package using "--prefix " to a different location, they are going to get errors since these 3 files cannot be installed in any other location apart from /etc. This usually is not the standard way of installing files since it obstructs some of the functionality that RPM offers. That being said, we really do need to install these files in /opt for fpgad to function properly. So the solution is to set CPACK_RPM_RELOCATION_PATHS to /etc and add that as a prefix for the opae-tools package.

Coverage remained the same at 81.201% when pulling 08c9ba2aa52cfcc7a2df670a8e05c7db2969c81c on nkorde/fix-fpga-package-warnings into 20d285160febe03640d4a65beeb88953db7dad82 on master.


v2版本中，可以实现不同worker上的collector将收集到的信息传送到learner所在的worker上吗

[ ] I have marked all applicable categories:

[ ] exception-raising bug
[ ] RL algorithm bug
[ ] system worker bug
[ ] system utils bug
[ ] code design/refactor
[ ] documentation request
[ ] new feature request

[ ] I have visited the readme and doc
[ ] I have searched through the issue tracker and pr tracker
[ ] I have mentioned version numbers, operating system and environment, where applicable:import ding, torch, sys
print(ding.__version__, torch.__version__, sys.version, sys.platform)

we have implemented this pattern now, you can refer to doc of this part.


🔧 drop ended

close #8892

Minted out in this case, no?

@exezbcz did you meant ended at external card and Minted out inside like the image above?

@prury could be, for another issue i guess
I am more interested in why the button is active tho :D

@prury could be, for another issue i guess
I am more interested in why the button is active tho :D

When disconnected it stays active all the time, it only gets disabled once you connect your wallet


Running rake android[test] fails

Finished in 30 secs

Error:
spec home, accessibility, and animation#test_0001_spec:
Timeout::Error: execution expired
/Library/Ruby/Gems/2.0.0/gems/appium_lib-3.0.2/lib/appium_lib/common/helper.rb:43:in sleep' /Library/Ruby/Gems/2.0.0/gems/appium_lib-3.0.2/lib/appium_lib/common/helper.rb:43:inrescue in block in wait'
/Library/Ruby/Gems/2.0.0/gems/appium_lib-3.0.2/lib/appium_lib/common/helper.rb:38:in block in wait' /Library/Ruby/Gems/2.0.0/gems/appium_lib-3.0.2/lib/appium_lib/common/helper.rb:36:inwait'
/Library/Ruby/Gems/2.0.0/gems/appium_lib-3.0.2/lib/appium_lib/driver.rb:161:in rescue in block (3 levels) in promote_singleton_appium_methods' /Library/Ruby/Gems/2.0.0/gems/appium_lib-3.0.2/lib/appium_lib/driver.rb:158:inblock (3 levels) in promote_singleton_appium_methods'
/usr/local/lib/node_modules/appium/appium/submodules/ApiDemos/tutorial/projects/ruby_android/appium/android/pages/home.rb:32:in assert' /usr/local/lib/node_modules/appium/appium/submodules/ApiDemos/tutorial/projects/ruby_android/appium/android/pages/home.rb:9:inaccessibility_click'
/usr/local/lib/node_modules/appium/appium/submodules/ApiDemos/tutorial/projects/ruby_android/appium/android/specs/test.rb:6:in `block (2 levels) in '

1 runs, 0 assertions, 0 failures, 1 errors, 0 skips
delete
Understand this is a failure to locate the element. This is built from the tutorial. What needs to be updated?

@jraczak Have a look at referenced PR that fixes Ruby tests.

Does bundle exec rake android[test] fail?

Yes, bundle exec rake android[test] will also fail.

fixed by https://github.com/appium/tutorial/issues/22

This works beautifully now. Thanks so much @JaniJegoroff for pushing this through so fast and @bootstraponline for the quick merge.

@jraczak Awesome, happy testing! :)


unpack: failed to find runc binary

/ $ img pull alpine
Pulling alpine...
Pulled: sha256:b74dfec8b5a0a7d017aad049da9d4b9d009d0ca1c35901376ff08280a2ae5e58
Size: 2.63MiB
/ $ img unpack alpine
WARN[0000] Process sandbox is not available, consider unmasking procfs: mount: permission denied (are you root?)

creating worker opt failed: failed to find runc binary

similar to issue #204
https://github.com/genuinetools/img/blob/013bb211567bb92374315affaf0ffa1787fb23c2/unpack.go#L24
maybe this line should be changed to true?

@zhangyoufu This sounds like #231 , I have fixed some runc issues in my fork. I have PRs pending.  https://github.com/kekoav/img

@zhangyoufu With my fork, I was able do the following:
$ docker run --rm -it \
>     --security-opt seccomp=unconfined --security-opt apparmor=unconfined \
>     --entrypoint /bin/sh \
>     --workdir /tmp \
>     kekoav/img
/tmp $ img pull alpine
Pulling alpine...
Pulled: sha256:34b01a20e0d265542de0dfe37f04adee7d30f878adf4ff002284403661980be9
Size: 2.63MiB
/tmp $ img unpack alpine
WARN[0000] Process sandbox is not available, consider unmasking procfs: mount: permission denied (are you root?)
Successfully unpacked rootfs for alpine to: /tmp/rootfs
/tmp $ ls -a /tmp/rootfs/
.      ..     bin    dev    etc    home   lib    media  mnt    opt    proc   root   run    sbin   srv    sys    tmp    usr    var

I do get a warning about procfs, but the unpack seems to work. This is likely fixed by #232 .

@kekoav It works for me. Thanks!

@AkihiroSuda this is resolved, please close.


Improve golden tests infrastructure

At the moment, we have a manually constructed examples, leading to the possibility of lots of missed parts of the encoding, and not all tests live where they ought to.
We should:

Introduce a generic infrastructure (probably in cardano-base) for constructing canonical examples:

class CanonicalExamples a where
  canonicalExamples :: Proxy a -> [a]

which should have a default generic implementation: for a sum type just construct canonical examples for each of the constructors, and for a product type just construct a single canonical example for all components.

Manual instances should be provided for (a) recursive datatypes (the above strategy would otherwise give an infinite number of examples), (b) the standard types (tuples, maybe, lists, ..), and (c) types where the decoder establishes specific invariants. As an example of category (c), suppose we have a data type with three fields a, b, and c, where the encoder only encodes a and b, and the coder reconstructs c from a and b. An arbitrary example would fail a roundtrip test, as the two c values would not match, and so this will require a manual instance. Writing such a manual instance can piggy back on canonical examples for standard types (i.e., it could just ask for a canonical example of an a, b tuple).

Instances should be provided for all the ledger types, in cardano-ledger for Byron and in cardano-ledger-specs for Shelley, and these repos should be equipped with golden tests for these canonical examples.

In ouroboros-consensus, we should provide instances for our types, not duplicating any of the work done in the ledger, and have golden tests for our types. Some of those tests will necessarily involve types from the ledger (i.e., ExtLedgerState), that is not problematic.

Marking this as medium priority, despite it being a testing ticket, since we already had one occurrence of an unintended change in the binary format slipping in.

Implementation note: instances for base types such as Bool, Int, etc should probably only give a single value, otherwise we'll end up with combinatorial explosion and way too many examples.

Introduce a generic infrastructure (probably in cardano-base)

cardano-base or cardano-prelude?

In cardano-prelude, see https://github.com/input-output-hk/cardano-prelude/blob/master/src/Cardano/Prelude/GHC/Heap/NormalForm/Classy.hs

Yes, sorry.


How should a file be accessed?

I have a configuration in JSON format. I want to read this file as an Autoload Singleton.
None of the file options work.
JS fetch() and FileReader() both give the same basic error message:

While trying to setup const file = new godot.File.new() gives the error message:
.
Then I figured "well I'll just have a GDScript, at the top of the Autoload tree, that reads the file as text and passes it on" but the JSX script couldn't find the file/class/property. import {ReadJson} from "ReadJson" or `from "ReadJson.gd" would give an error like they couldn't find the file, and I tried several paths. I would have put a screen for the error here, but I couldn't regenerate the error or problem.
However, I would understand if "you can't" cross-use data between GD and JS. In retrospect, it seems pretty obvious heh.
The bottom line is that I'd like to read a file in JS as an Autoload Singleton. How should I do this?

Calling godot.File.new looks for a method inside the godot.File class, which ends up calling as a function with new() that doesn't exist.
godot.File is the class, so any of godot's classes should be called with new godot.CLASS_NAME(), or in this case, new godot.File()

godot being the object, File being a property that has a class with a contructor as value

In other words:
const godot = {
    File: class () {
        constuctor(params) { ... }
    },
    CLASS_NAME: class() { ... }
}

@ogrotten
I was able to set up a working example:

I created a simple .json file
I created a singleton
I add the singleton as autoload
I imported the singleton. It has to be the same name you gave in the Project Settings.
I called the function. This will give me the Object inside the .json file so as a String you need to use JSON.stringify()

I used TypeScript but it's the same in JS but without the types. One hint if you use TS I added resolveJsonModule to the ts-config.json.
Another hint: I used esbuild --bundle to include dayjs from node_modules. But the file where I included the singleton used the resolved import for this. So I wasn't able to call the singleton because the autoload path in project settings wasn't in the test.jsx file anymore. The solution was to use another file to resolve all modules from npm as bundle and include this in every other file. I will add all of this to the new documentation and I will change the misc folder to have a working TS-project out of the box.

Added two examples:
https://geequlim.github.io/ECMAScript/examples/load-json-in-singleton/
https://geequlim.github.io/ECMAScript/examples/read-file-local/


Bone Broth Recipe Does Not Work in Cooking Pot

Minecraft version
1.21.1
Farmer's Delight version
2.2.7
Fabric Loader version
i literally cannot find this.....
Fabric API version
0.110.0+1.21.1
Description
Bone Broth Recipe does not produce bone broth in Cooking Pot - does nothing despite recipe being in JEI.

^^ Tried all of these for the bone broth and nothing produces bone broth.
Steps to reproduce
Place mushroom in Cooking Pot, or any other option in the bone broth recipe, and wait for recipe to be produced. Nothing happens.
Mod list
All mods in this mod-pack, version 10:
https://www.curseforge.com/minecraft/modpacks/medieval-mc-fabric-mmc3
Logs

The console doesn't produce any logs unfortunately related to this, or I couldnt isolate them, but here is an in game example
Minimal instance

[ ] I have tested this on a minimal instance

Performance and shader mods

[X] I am using performance or shader mods

This is an issue with tags. This should be fixed as of the next update.


Release version 2.0.1

DOIs:
Core N/A
Server N/A
Release checklist: https://docs.google.com/spreadsheets/d/1dmku1ZfUVifCjjNtHuNO1gK-qYyBVO3MlrkBVnKoNoI/edit#gid=1197993243
Release report: https://docs.google.com/document/d/12tqj300Z3k-S1WngFXjPalbHkD3HM2e0SMyTnHAevh0/edit

Release completed


GRPC .net client slower then GRPC core in .NET 5.0 framework

Hello all
I'm facing a very weird behavior.  The client -> server communication is in streaming. With GRPC core package the client/server communication run about 15000 operations per second. With GRPC .net client package the communication is about 1200 ops/s.
Please find here below the cliente code:
GRPC core code:
`
var chanel = new Channel("<IP_ADDRESS>", 4424, ChannelCredentials.Insecure);
var service = new GrpcService.GrpcServiceClient(chanel);
var call = service.AppendItems();
foreach (var i in grpcItems)
{
await call.RequestStream.WriteAsync(r).ConfigureAwait(false);
}
await call.RequestStream.CompleteAsync();
`
GRPC .net client code:
`
var chanel = GrpcChannel.ForAddress("http://<IP_ADDRESS>:4424", new GrpcChannelOptions
{
HttpHandler = new SocketsHttpHandler
{
EnableMultipleHttp2Connections = true,
PreAuthenticate = false,
UseCookies = false,
PooledConnectionIdleTimeout = Timeout.InfiniteTimeSpan,
},
});
var service = new GrpcService.GrpcServiceClient(chanel);
var call = service.AppendItems();
foreach (var i in grpcItems)
{
await call.RequestStream.WriteAsync(r).ConfigureAwait(false);
}
await call.RequestStream.CompleteAsync();
`
Using .net 6 frameworks times are almost the same but I was expecting something faster. Can you kindly point me out on how to improve performances.
Thank you

Hi @CosbyBs86. It sounds like you have general questions about a different project, gRPC .Net is not related to gRPC core. Please see their repo, and follow their policies for asking general questions.
CC @jtattermusch.

Note that the official performance benchmarks (https://grpc.io/docs/guides/benchmarking/, https://grafana-dot-grpc-testing.appspot.com/) now has comparison of Grpc.Core with grpc-dotnet. You can use that for the reference.


Update readme to include latest code changes

I referred to gunzip process readme while updating this file.

@sharma-shruti  as you suggested, I've removed the multiqc from the file. We'll stick to dealing with only a single core tool in a single repository.


Why is the acc different from the MVGRL paper?

Hello! In your paper, your acc of MVGRL method on three datasets (Cora, CiteSeer, PubMed) are 82.9, 72.6, 79.4. But in MVGRL paper, the acc are 86.8, 73.3, 80.1. I think both of you use the same dataset, so could you please explain the reason?

Hi @hcmdgh, we followed the settings and results in this paper: Contrastive and Generative Graph Convolutional Networks for Graph-based Semi-Supervised Learning. You may also refer to this page for more details: https://github.com/kavehhassani/mvgrl/issues/7


Feature for auto commenting on a new issue creation

I would like an automated feature that posts a predefined comment on an issue as soon as it is created. This feature aims to address the problem of delayed and inconsistent communication following the creation of issues. By automatically commenting on issues as soon as they are created, it ensures that contributors receive immediate feedback and acknowledgment for their efforts. This fosters a positive and supportive environment for collaboration, encouraging continued participation and engagement from contributors.
Could you please assign me this issue under GSSOC'24.

Please add the label of gssoc and appropriate level on this issue as per gssoc guidelines.


directive - re-introduce /*jslint name*/ to ignore "Bad property name" warning.

decided to re-include the nomen-directive, to make things easier for newcomers to onboard jslint.

renamed directive from nomen to name so its easier-to-remember and less confusing for new users.


Do not merge. Just for research.

The aim is to check that when an org owner approves the PR, the webhook contains "author_association": "OWNER"
It should be, according to the doc but it's somewhat unclear.

Dammit,
"author_association": "MEMBER",


ApolloSchemaIntrospectionTask is no longer available.  what is the alternative?

try to upgrade to the latest v1.2.0 and found out that ApolloSchemaIntrospectionTask is not available anymore.  What will be the alternative for creating a task in gradle for using pre-installed apollo-codegen?

Cross posting from https://github.com/apollographql/apollo-android/issues/928:
@felixchez if you're willing to try the snapshots and the incubating plugin, there's a downloadXYZSchema task: https://github.com/apollographql/apollo-android#incubating-plugin

@martinbonnin For some reason I cannot reference service dsl tag in 1.2.1 release, but it works well if I switch to incubating 1.2.1-SNAPSHOT version.

@gshcherb what is the error you get ?

If I just specify
classpath "com.apollographql.apollo:apollo-gradle-plugin:1.2.1"
it gives me
> Could not find method service() for arguments [test, build_ds8arb4a7liclz9gw4nxu3fm3$_run_closure2$_closure9$_closure16@3979b797] on object of type com.apollographql.apollo.gradle.ApolloExtension.
with the same gradle files
classpath 'com.apollographql.apollo:apollo-gradle-plugin-incubating:1.2.1-SNAPSHOT' works fine though.

service is only in the incubating plugin so you will have to use com.apollographql.apollo:apollo-gradle-plugin-incubating:1.2.1  for the time being.

As Martin said it will be fixed with a new incubating plugin. Closing for now.

What about inspecting a .graphqls schema thats on the local file system? This was our approach in previous versions.


Add option to selectively disable rpf check for workloads

Description
This PR implements the feature described in #5643 .
This is a new feature, disabled by default and controlled by a felix configuration parameter: WorkloadSourceSpoofing
It has 2 possible values:

None (default): maintain current behaviour, pods cannot spoof their IP
Any: pods can ask to send packets from any address

A pod can request IP address spoofing with the following annotation:
cni.projectcalico.org/allowedSourceIPs
The value should be a JSON array of prefixes that the pod wants to use as source, for instance:
cni.projectcalico.org/allowedSourceIPs: "[\"<IP_ADDRESS>/16\", \"<IP_ADDRESS>/32\"]"

This feature is currently only implemented in the iptables dataplane.
Implementation
This feature is implemented by adding a AllowSpoofedSourcePrefixes field in the various WorkloadEndpoint structures (is it really required to update all of them with this new field?). This field contains the list of IP addresses that the pod requests to be able to send traffic from, parsed from the annotation.
The contents of this field are checked in the felix ValidationFilter in order to ensure that they comply to the Felix configuration. If the validation doesn't pass, the WorkloadEndpoint is considered to be deleted (and as a result felix will not handle it any further). If the validation passes, the WorkloadEndpoint is passed to the dataplane by the calculation graph.
The dataplane can then handle this AllowSpoofedSourcePrefixes parameter to allow the pod to bypass the RPF check. This PR implements this in the iptables dataplane, by adding some rules that bypass the rpf check in the raw PREROUTING chain, and by disabling the kernel RPF check (rp_filter sysctl) for the interfaces that have source spoofing enabled for at least one address. This is handled in felix/dataplane/linux/endpoint_mgr.go.
Related issues/PRs
fixes https://github.com/projectcalico/calico/issues/5643
Todos

[x] Tests
[ ] Documentation
[ ] Release note

Release Note
Would a release not be required for this?
None required

Thanks @fasaxc for the first review, just updated this PR to remove the ServicesOnly option for now.

/sem-approve

Thanks a lot for the review! I think the last update should address your comments:

Added docs for the felix configuration parameter, changed None to Disabled
Updated v1.WorkloadEndpoint and model.WorkloadEndpoint to use []net.IPNet instead of []string
Restore default rp_filter value when source spoofing is disabled

/sem-approve

Just rebased this which should hopefully fix the CI.

/sem-approve

#5342 added another felix configuration parameter, which caused the Felix config tests to fail. I just rebased this PR on master and incremented numBaseFelixConfigs, the CI should be happy now.

/sem-approve

Thanks a lot for the review! The last commit should address your comments.

/sem-approve

Just rebased on master to fix the conflict in felix/proto/felixbackend.pb.go .

/sem-approve

A few tests failed but it looks like that may be for reasons unrelated to this patch. Do I have access to the artifacts mentioned in the logs to check?
Felix: BPF UT/FV tests on new kernel :
.semaphore/publish-artifacts                            Failed in 00:00
++ dirname .semaphore/publish-artifacts 00:00
+ my_dir=.semaphore 00:00
+ repo_dir=.semaphore/.. 00:00
+ cd .semaphore/../artifacts 00:00
+ for file in * 00:00
+ artifact push job '*' 00:00
2022/04/21 13:50:29 Failed to find file to push

Node: Tests
../.semaphore/run-and-monitor k8s-test.log make k8s-test         Failed in 06:42
...
==== Command make k8s-test FAILED (PID=3688).  Full command output in artifacts/k8s-test.log. 06:42
==== Done, exiting with RC=1

e2e tests
.semaphore/run-and-monitor e2e-test.log make e2e-test          Failed in 07:57
...
make[2]: Leaving directory '/home/semaphore/calico/cni-plugin' 07:57
==== Command make e2e-test FAILED (PID=3764).  Full command output in artifacts/e2e-test.log. 07:57
.semaphore/run-and-monitor: line 78: kill: (3770) - No such process 07:57
==== Done, exiting with RC=1

@AloysAugustin If you can view semaphore and see the "Artifacts" tab, then you have access to the logs being referenced. I'm not sure what access you have but let me take a quick look at these tests since I think that some of these issues might be unrelated to your changes.

Thanks for looking into it @mgleung ! I don't see the Artifacts tab in Semaphore so I can't really know what's going on. Could you send me the full log (maybe on Slack is the easiest) if the issue seems related to my patch?

@AloysAugustin sorry about the test issues. I think we found the cause it it looks to be due to some changes I made in a separate part of the repo. I pushed in a fix, but the tests seem to still be picking up the old version. Do you mind doing a quick rebase? I'm hoping that should force semaphore to update.

Just rebased :)

/sem-approve

@AloysAugustin thanks for your patience with all of this. The last running tests have passed in multiple runs prior and one of the other tests seems to be failing because of a test flake so I'll merge your changes.


feat: allow users to rename drives

LGTM! Works perfectly. Just update the validation message and we should be good to merge.


auto recovery error log : Corrupted frame received from bookie， under replicated can not covery

Describe the bug
there are a  pulsar cluster in k8s
We decided to migrate bookie to a new  bookie cluster,
1, we set auto recovery is enabled
2. deploy a new bookie statefulset normally
3. Reduced number of instances one by one .
4. i can see recovery is working
old bookie cluster has 5 pod (0-4), first i close  bookie-4
but in latest , there are some ledgerId are not  migrate successful,
bin/bookkeeper shell listunderreplicated

02:27:18.605 [main-EventThread] INFO  org.apache.bookkeeper.zookeeper.ZooKeeperWatcherBase - ZooKeeper client is connected now.
02:27:18.720 [main] INFO  org.apache.bookkeeper.tools.cli.commands.autorecovery.ListUnderReplicatedCommand - 90129
02:27:18.721 [main] INFO  org.apache.bookkeeper.tools.cli.commands.autorecovery.ListUnderReplicatedCommand -    Ctime :<PHONE_NUMBER>769
02:27:18.722 [main] INFO  org.apache.bookkeeper.tools.cli.commands.autorecovery.ListUnderReplicatedCommand - 93326
02:27:18.723 [main] INFO  org.apache.bookkeeper.tools.cli.commands.autorecovery.ListUnderReplicatedCommand -    Ctime :<PHONE_NUMBER>235
02:27:18.724 [main] INFO  org.apache.bookkeeper.tools.cli.commands.autorecovery.ListUnderReplicatedCommand - 90190
02:27:18.724 [main] INFO  org.apache.bookkeeper.tools.cli.commands.autorecovery.ListUnderReplicatedCommand -    Ctime :<PHONE_NUMBER>993
02:27:18.726 [main] INFO  org.apache.bookkeeper.tools.cli.commands.autorecovery.ListUnderReplicatedCommand - 93508
02:27:18.726 [main] INFO  org.apache.bookkeeper.tools.cli.commands.autorecovery.ListUnderReplicatedCommand -    Ctime :<PHONE_NUMBER>461
02:27:18.728 [main] INFO  org.apache.bookkeeper.tools.cli.commands.autorecovery.ListUnderReplicatedCommand - 90955
02:27:18.728 [main] INFO  org.apache.bookkeeper.tools.cli.commands.autorecovery.ListUnderReplicatedCommand -    Ctime :<PHONE_NUMBER>866
02:27:18.730 [main] INFO  org.apache.bookkeeper.tools.cli.commands.autorecovery.ListUnderReplicatedCommand - 95981
02:27:18.730 [main] INFO  org.apache.bookkeeper.tools.cli.commands.autorecovery.ListUnderReplicatedCommand -    Ctime :<PHONE_NUMBER>162
02:27:18.732 [main] INFO  org.apache.bookkeeper.tools.cli.commands.autorecovery.ListUnderReplicatedCommand - 92099
02:27:18.732 [main] INFO  org.apache.bookkeeper.tools.cli.commands.autorecovery.ListUnderReplicatedCommand -    Ctime :<PHONE_NUMBER>587
02:27:18.734 [main] INFO  org.apache.bookkeeper.tools.cli.commands.autorecovery.ListUnderReplicatedCommand - 92461
02:27:18.734 [main] INFO  org.apache.bookkeeper.tools.cli.commands.autorecovery.ListUnderReplicatedCommand -    Ctime :<PHONE_NUMBER>050
02:27:18.735 [main] INFO  org.apache.bookkeeper.tools.cli.commands.autorecovery.ListUnderReplicatedCommand - 98373
02:27:18.736 [main] INFO  org.apache.bookkeeper.tools.cli.commands.autorecovery.ListUnderReplicatedCommand -    Ctime :<PHONE_NUMBER>002
02:27:18.737 [main] INFO  org.apache.bookkeeper.tools.cli.commands.autorecovery.ListUnderReplicatedCommand - 98613
02:27:18.737 [main] INFO  org.apache.bookkeeper.tools.cli.commands.autorecovery.ListUnderReplicatedCommand -    Ctime :<PHONE_NUMBER>602
02:27:18.739 [main-SendThread(pulsar-cluster-zookeeper:2181)] WARN  org.apache.zookeeper.ClientCnxn - An exception was thrown while closing send thread for session 0x2000018322a00a4.
org.apache.zookeeper.ClientCnxn$EndOfStreamException: Unable to read additional data from server sessionid 0x2000018322a00a4, likely server has closed socket
        at org.apache.zookeeper.ClientCnxnSocketNIO.doIO(ClientCnxnSocketNIO.java:77) ~[org.apache.zookeeper-zookeeper-3.6.3.jar:3.6.3]
        at org.apache.zookeeper.ClientCnxnSocketNIO.doTransport(ClientCnxnSocketNIO.java:350) ~[org.apache.zookeeper-zookeeper-3.6.3.jar:3.6.3]
        at org.apache.zookeeper.ClientCnxn$SendThread.run(ClientCnxn.java:1290) [org.apache.zookeeper-zookeeper-3.6.3.jar:3.6.3]
02:27:18.854 [main-EventThread] INFO  org.apache.zookeeper.ClientCnxn - EventThread shut down for session: 0x2000018322a00a4
02:27:18.854 [main] INFO  org.apache.zookeeper.ZooKeeper - Session: 0x2000018322a00a4 closed

auto recovery log:
02:37:31.367 [main-EventThread] INFO  org.apache.bookkeeper.meta.ZkLedgerUnderreplicationManager - Latch countdown due to ZK event: WatchedEvent state:SyncConnected type:NodeChildrenChanged path:/ledgers/underreplication/locks
02:37:31.369 [main-EventThread] INFO  org.apache.bookkeeper.meta.ZkLedgerUnderreplicationManager - Latch countdown due to ZK event: WatchedEvent state:SyncConnected type:NodeChildrenChanged path:/ledgers/underreplication/locks
02:38:47.113 [main-EventThread] INFO  org.apache.bookkeeper.meta.ZkLedgerUnderreplicationManager - Latch countdown due to ZK event: WatchedEvent state:SyncConnected type:NodeChildrenChanged path:/ledgers/underreplication/locks
02:38:47.115 [main-EventThread] INFO  org.apache.bookkeeper.meta.ZkLedgerUnderreplicationManager - Latch countdown due to ZK event: WatchedEvent state:SyncConnected type:NodeChildrenChanged path:/ledgers/underreplication/locks
02:39:10.731 [main-EventThread] INFO  org.apache.bookkeeper.meta.ZkLedgerUnderreplicationManager - Latch countdown due to ZK event: WatchedEvent state:SyncConnected type:NodeChildrenChanged path:/ledgers/underreplication/locks
02:39:10.734 [main-EventThread] INFO  org.apache.bookkeeper.meta.ZkLedgerUnderreplicationManager - Latch countdown due to ZK event: WatchedEvent state:SyncConnected type:NodeChildrenChanged path:/ledgers/underreplication/locks
02:39:10.736 [bookkeeper-io-3-4] INFO  org.apache.bookkeeper.proto.PerChannelBookieClient - Successfully connected to bookie: pulsar-cluster-bookie-3.pulsar-cluster-bookie.pulsar.svc.cluster.local:3181 [id: 0xb94a56fe, L:/<IP_ADDRESS>:45666 - R:pulsar-cluster-bookie-3.pulsar-cluster-bookie.pulsar.svc.cluster.local/<IP_ADDRESS>:3181]
02:39:10.736 [bookkeeper-io-3-4] INFO  org.apache.bookkeeper.proto.PerChannelBookieClient - connection [id: 0xb94a56fe, L:/<IP_ADDRESS>:45666 - R:pulsar-cluster-bookie-3.pulsar-cluster-bookie.pulsar.svc.cluster.local/<IP_ADDRESS>:3181] authenticated as BookKeeperPrincipal{ANONYMOUS}
02:39:10.737 [bookkeeper-io-3-1] INFO  org.apache.bookkeeper.proto.PerChannelBookieClient - Successfully connected to bookie: pulsar-cluster-bookie-2.pulsar-cluster-bookie.pulsar.svc.cluster.local:3181 [id: 0x0030dc6a, L:/<IP_ADDRESS>:44790 - R:pulsar-cluster-bookie-2.pulsar-cluster-bookie.pulsar.svc.cluster.local/<IP_ADDRESS>:3181]
02:39:10.737 [bookkeeper-io-3-1] INFO  org.apache.bookkeeper.proto.PerChannelBookieClient - connection [id: 0x0030dc6a, L:/<IP_ADDRESS>:44790 - R:pulsar-cluster-bookie-2.pulsar-cluster-bookie.pulsar.svc.cluster.local/<IP_ADDRESS>:3181] authenticated as BookKeeperPrincipal{ANONYMOUS}
02:39:10.747 [bookkeeper-io-3-4] ERROR org.apache.bookkeeper.proto.PerChannelBookieClient - Corrupted frame received from bookie: pulsar-cluster-bookie-3.pulsar-cluster-bookie.pulsar.svc.cluster.local/<IP_ADDRESS>:3181
02:39:10.747 [bookkeeper-io-3-1] ERROR org.apache.bookkeeper.proto.PerChannelBookieClient - Corrupted frame received from bookie: pulsar-cluster-bookie-2.pulsar-cluster-bookie.pulsar.svc.cluster.local/<IP_ADDRESS>:3181
02:39:10.747 [bookkeeper-io-3-4] INFO  org.apache.bookkeeper.proto.PerChannelBookieClient - Disconnected from bookie channel [id: 0xb94a56fe, L:/<IP_ADDRESS>:45666 ! R:pulsar-cluster-bookie-3.pulsar-cluster-bookie.pulsar.svc.cluster.local/<IP_ADDRESS>:3181]
02:39:10.747 [bookkeeper-io-3-1] INFO  org.apache.bookkeeper.proto.PerChannelBookieClient - Disconnected from bookie channel [id: 0x0030dc6a, L:/<IP_ADDRESS>:44790 ! R:pulsar-cluster-bookie-2.pulsar-cluster-bookie.pulsar.svc.cluster.local/<IP_ADDRESS>:3181]
02:39:10.748 [bookkeeper-io-3-2] INFO  org.apache.bookkeeper.proto.PerChannelBookieClient - Successfully connected to bookie: pulsar-cluster-bookie-3.pulsar-cluster-bookie.pulsar.svc.cluster.local:3181 [id: 0xd8237aad, L:/<IP_ADDRESS>:45670 - R:pulsar-cluster-bookie-3.pulsar-cluster-bookie.pulsar.svc.cluster.local/<IP_ADDRESS>:3181]
02:39:10.748 [bookkeeper-io-3-3] INFO  org.apache.bookkeeper.proto.PerChannelBookieClient - Successfully connected to bookie: pulsar-cluster-bookie-2.pulsar-cluster-bookie.pulsar.svc.cluster.local:3181 [id: 0x71fcf2a7, L:/<IP_ADDRESS>:44794 - R:pulsar-cluster-bookie-2.pulsar-cluster-bookie.pulsar.svc.cluster.local/<IP_ADDRESS>:3181]
02:39:10.748 [bookkeeper-io-3-2] INFO  org.apache.bookkeeper.proto.PerChannelBookieClient - connection [id: 0xd8237aad, L:/<IP_ADDRESS>:45670 - R:pulsar-cluster-bookie-3.pulsar-cluster-bookie.pulsar.svc.cluster.local/<IP_ADDRESS>:3181] authenticated as BookKeeperPrincipal{ANONYMOUS}
02:39:10.748 [bookkeeper-io-3-3] INFO  org.apache.bookkeeper.proto.PerChannelBookieClient - connection [id: 0x71fcf2a7, L:/<IP_ADDRESS>:44794 - R:pulsar-cluster-bookie-2.pulsar-cluster-bookie.pulsar.svc.cluster.local/<IP_ADDRESS>:3181] authenticated as BookKeeperPrincipal{ANONYMOUS}
02:39:10.763 [bookkeeper-io-3-2] ERROR org.apache.bookkeeper.proto.PerChannelBookieClient - Corrupted frame received from bookie: pulsar-cluster-bookie-3.pulsar-cluster-bookie.pulsar.svc.cluster.local/<IP_ADDRESS>:3181
02:39:10.763 [bookkeeper-io-3-2] INFO  org.apache.bookkeeper.proto.PerChannelBookieClient - Disconnected from bookie channel [id: 0xd8237aad, L:/<IP_ADDRESS>:45670 ! R:pulsar-cluster-bookie-3.pulsar-cluster-bookie.pulsar.svc.cluster.local/<IP_ADDRESS>:3181]
02:39:10.764 [bookkeeper-io-3-3] ERROR org.apache.bookkeeper.proto.PerChannelBookieClient - Corrupted frame received from bookie: pulsar-cluster-bookie-2.pulsar-cluster-bookie.pulsar.svc.cluster.local/<IP_ADDRESS>:3181
02:39:10.764 [bookkeeper-io-3-3] INFO  org.apache.bookkeeper.proto.PerChannelBookieClient - Disconnected from bookie channel [id: 0x71fcf2a7, L:/<IP_ADDRESS>:44794 ! R:pulsar-cluster-bookie-2.pulsar-cluster-bookie.pulsar.svc.cluster.local/<IP_ADDRESS>:3181]
02:39:10.765 [bookkeeper-io-3-4] INFO  org.apache.bookkeeper.proto.PerChannelBookieClient - Successfully connected to bookie: pulsar-cluster-bookie-3.pulsar-cluster-bookie.pulsar.svc.cluster.local:3181 [id: 0x7021b4ff, L:/<IP_ADDRESS>:45674 - R:pulsar-cluster-bookie-3.pulsar-cluster-bookie.pulsar.svc.cluster.local/<IP_ADDRESS>:3181]
02:39:10.765 [bookkeeper-io-3-4] INFO  org.apache.bookkeeper.proto.PerChannelBookieClient - connection [id: 0x7021b4ff, L:/<IP_ADDRESS>:45674 - R:pulsar-cluster-bookie-3.pulsar-cluster-bookie.pulsar.svc.cluster.local/<IP_ADDRESS>:3181] authenticated as BookKeeperPrincipal{ANONYMOUS}
02:39:10.773 [bookkeeper-io-3-4] ERROR org.apache.bookkeeper.proto.PerChannelBookieClient - Corrupted frame received from bookie: pulsar-cluster-bookie-3.pulsar-cluster-bookie.pulsar.svc.cluster.local/<IP_ADDRESS>:3181
02:39:10.773 [bookkeeper-io-3-4] INFO  org.apache.bookkeeper.proto.PerChannelBookieClient - Disconnected from bookie channel [id: 0x7021b4ff, L:/<IP_ADDRESS>:45674 ! R:pulsar-cluster-bookie-3.pulsar-cluster-bookie.pulsar.svc.cluster.local/<IP_ADDRESS>:3181]
02:39:10.773 [BookKeeperClientWorker-OrderedExecutor-0-0] INFO  org.apache.bookkeeper.client.PendingReadOp - Error: Bookie handle is not available while reading L90190 E0 from bookie: pulsar-cluster-bookie-3.pulsar-cluster-bookie.pulsar.svc.cluster.local:3181
02:39:10.774 [bookkeeper-io-3-1] INFO  org.apache.bookkeeper.proto.PerChannelBookieClient - Successfully connected to bookie: pulsar-cluster-bookie-2.pulsar-cluster-bookie.pulsar.svc.cluster.local:3181 [id: 0x0c5a059e, L:/<IP_ADDRESS>:44798 - R:pulsar-cluster-bookie-2.pulsar-cluster-bookie.pulsar.svc.cluster.local/<IP_ADDRESS>:3181]
02:39:10.774 [bookkeeper-io-3-1] INFO  org.apache.bookkeeper.proto.PerChannelBookieClient - connection [id: 0x0c5a059e, L:/<IP_ADDRESS>:44798 - R:pulsar-cluster-bookie-2.pulsar-cluster-bookie.pulsar.svc.cluster.local/<IP_ADDRESS>:3181] authenticated as BookKeeperPrincipal{ANONYMOUS}
02:39:10.783 [bookkeeper-io-3-1] ERROR org.apache.bookkeeper.proto.PerChannelBookieClient - Corrupted frame received from bookie: pulsar-cluster-bookie-2.pulsar-cluster-bookie.pulsar.svc.cluster.local/<IP_ADDRESS>:3181
02:39:10.783 [bookkeeper-io-3-1] INFO  org.apache.bookkeeper.proto.PerChannelBookieClient - Disconnected from bookie channel [id: 0x0c5a059e, L:/<IP_ADDRESS>:44798 ! R:pulsar-cluster-bookie-2.pulsar-cluster-bookie.pulsar.svc.cluster.local/<IP_ADDRESS>:3181]
02:39:10.784 [BookKeeperClientWorker-OrderedExecutor-0-0] INFO  org.apache.bookkeeper.client.PendingReadOp - Error: Bookie handle is not available while reading L90190 E0 from bookie: pulsar-cluster-bookie-2.pulsar-cluster-bookie.pulsar.svc.cluster.local:3181
02:39:10.784 [BookKeeperClientWorker-OrderedExecutor-0-0] ERROR org.apache.bookkeeper.client.PendingReadOp - Read of ledger entry failed: L90190 E0-E0, Sent to [pulsar-cluster-bookie-3.pulsar-cluster-bookie.pulsar.svc.cluster.local:3181, pulsar-cluster-bookie-2.pulsar-cluster-bookie.pulsar.svc.cluster.local:3181], Heard from [] : bitset = {}, Error = 'Bookie handle is not available'. First unread entry is (-1, rc = null)
02:39:10.784 [BookKeeperClientWorker-OrderedExecutor-0-0] ERROR org.apache.bookkeeper.replication.ReplicationWorker - Received error: -8 while trying to read entry: 0 of ledger: 90190 in ReplicationWorker
02:39:10.784 [ReplicationWorker] ERROR org.apache.bookkeeper.replication.ReplicationWorker - Failed to read faulty entries, so giving up replicating ledgerFragment Fragment(LedgerID: 90190, FirstEntryID: 0[0], LastKnownEntryID: 0[0], Host: [pulsar-cluster-bookie-3.pulsar-cluster-bookie.pulsar.svc.cluster.local:3181, pulsar-cluster-bookie-2.pulsar-cluster-bookie.pulsar.svc.cluster.local:3181], Closed: true)
02:39:10.784 [bookkeeper-io-3-2] INFO  org.apache.bookkeeper.proto.PerChannelBookieClient - Successfully connected to bookie: pulsar-cluster-bookie-3.pulsar-cluster-bookie.pulsar.svc.cluster.local:3181 [id: 0xacb8bca9, L:/<IP_ADDRESS>:45680 - R:pulsar-cluster-bookie-3.pulsar-cluster-bookie.pulsar.svc.cluster.local/<IP_ADDRESS>:3181]
02:39:10.784 [bookkeeper-io-3-2] INFO  org.apache.bookkeeper.proto.PerChannelBookieClient - connection [id: 0xacb8bca9, L:/<IP_ADDRESS>:45680 - R:pulsar-cluster-bookie-3.pulsar-cluster-bookie.pulsar.svc.cluster.local/<IP_ADDRESS>:3181] authenticated as BookKeeperPrincipal{ANONYMOUS}
02:39:10.784 [bookkeeper-io-3-3] INFO  org.apache.bookkeeper.proto.PerChannelBookieClient - Successfully connected to bookie: pulsar-cluster-bookie-2.pulsar-cluster-bookie.pulsar.svc.cluster.local:3181 [id: 0x42c42991, L:/<IP_ADDRESS>:44804 - R:pulsar-cluster-bookie-2.pulsar-cluster-bookie.pulsar.svc.cluster.local/<IP_ADDRESS>:3181]
02:39:10.784 [bookkeeper-io-3-3] INFO  org.apache.bookkeeper.proto.PerChannelBookieClient - connection [id: 0x42c42991, L:/<IP_ADDRESS>:44804 - R:pulsar-cluster-bookie-2.pulsar-cluster-bookie.pulsar.svc.cluster.local/<IP_ADDRESS>:3181] authenticated as BookKeeperPrincipal{ANONYMOUS}
02:39:10.793 [bookkeeper-io-3-2] ERROR org.apache.bookkeeper.proto.PerChannelBookieClient - Corrupted frame received from bookie: pulsar-cluster-bookie-3.pulsar-cluster-bookie.pulsar.svc.cluster.local/<IP_ADDRESS>:3181
02:39:10.793 [bookkeeper-io-3-2] INFO  org.apache.bookkeeper.proto.PerChannelBookieClient - Disconnected from bookie channel [id: 0xacb8bca9, L:/<IP_ADDRESS>:45680 ! R:pulsar-cluster-bookie-3.pulsar-cluster-bookie.pulsar.svc.cluster.local/<IP_ADDRESS>:3181]
02:39:10.799 [bookkeeper-io-3-3] ERROR org.apache.bookkeeper.proto.PerChannelBookieClient - Corrupted frame received from bookie: pulsar-cluster-bookie-2.pulsar-cluster-bookie.pulsar.svc.cluster.local/<IP_ADDRESS>:3181
02:39:10.799 [bookkeeper-io-3-3] INFO  org.apache.bookkeeper.proto.PerChannelBookieClient - Disconnected from bookie channel [id: 0x42c42991, L:/<IP_ADDRESS>:44804 ! R:pulsar-cluster-bookie-2.pulsar-cluster-bookie.pulsar.svc.cluster.local/<IP_ADDRESS>:3181]
02:39:10.800 [bookkeeper-io-3-4] INFO  org.apache.bookkeeper.proto.PerChannelBookieClient - Successfully connected to bookie: pulsar-cluster-bookie-3.pulsar-cluster-bookie.pulsar.svc.cluster.local:3181 [id: 0xda6ef22c, L:/<IP_ADDRESS>:45684 - R:pulsar-cluster-bookie-3.pulsar-cluster-bookie.pulsar.svc.cluster.local/<IP_ADDRESS>:3181]
02:39:10.800 [bookkeeper-io-3-4] INFO  org.apache.bookkeeper.proto.PerChannelBookieClient - connection [id: 0xda6ef22c, L:/<IP_ADDRESS>:45684 - R:pulsar-cluster-bookie-3.pulsar-cluster-bookie.pulsar.svc.cluster.local/<IP_ADDRESS>:3181] authenticated as BookKeeperPrincipal{ANONYMOUS}
02:39:10.800 [bookkeeper-io-3-1] INFO  org.apache.bookkeeper.proto.PerChannelBookieClient - Successfully connected to bookie: pulsar-cluster-bookie-2.pulsar-cluster-bookie.pulsar.svc.cluster.local:3181 [id: 0x7eb38ed7, L:/<IP_ADDRESS>:44808 - R:pulsar-cluster-bookie-2.pulsar-cluster-bookie.pulsar.svc.cluster.local/<IP_ADDRESS>:3181]
02:39:10.800 [bookkeeper-io-3-1] INFO  org.apache.bookkeeper.proto.PerChannelBookieClient - connection [id: 0x7eb38ed7, L:/<IP_ADDRESS>:44808 - R:pulsar-cluster-bookie-2.pulsar-cluster-bookie.pulsar.svc.cluster.local/<IP_ADDRESS>:3181] authenticated as BookKeeperPrincipal{ANONYMOUS}
02:39:10.808 [bookkeeper-io-3-1] ERROR org.apache.bookkeeper.proto.PerChannelBookieClient - Corrupted frame received from bookie: pulsar-cluster-bookie-2.pulsar-cluster-bookie.pulsar.svc.cluster.local/<IP_ADDRESS>:3181
02:39:10.808 [bookkeeper-io-3-1] INFO  org.apache.bookkeeper.proto.PerChannelBookieClient - Disconnected from bookie channel [id: 0x7eb38ed7, L:/<IP_ADDRESS>:44808 ! R:pulsar-cluster-bookie-2.pulsar-cluster-bookie.pulsar.svc.cluster.local/<IP_ADDRESS>:3181]
02:39:10.850 [bookkeeper-io-3-4] ERROR org.apache.bookkeeper.proto.PerChannelBookieClient - Corrupted frame received from bookie: pulsar-cluster-bookie-3.pulsar-cluster-bookie.pulsar.svc.cluster.local/<IP_ADDRESS>:3181
02:39:10.850 [bookkeeper-io-3-4] INFO  org.apache.bookkeeper.proto.PerChannelBookieClient - Disconnected from bookie channel [id: 0xda6ef22c, L:/<IP_ADDRESS>:45684 ! R:pulsar-cluster-bookie-3.pulsar-cluster-bookie.pulsar.svc.cluster.local/<IP_ADDRESS>:3181]
02:39:10.850 [ReplicationWorker] ERROR org.apache.bookkeeper.replication.ReplicationWorker - ReplicationWorker failed to replicate Ledger : 90190 for 32 number of times, so deferring the ledger lock release by 300000 msecs
02:39:14.886 [main-EventThread] INFO  org.apache.bookkeeper.meta.ZkLedgerUnderreplicationManager - Latch countdown due to ZK event: WatchedEvent state:SyncConnected type:NodeChildrenChanged path:/ledgers/underreplication/locks
02:39:14.888 [main-EventThread] INFO  org.apache.bookkeeper.meta.ZkLedgerUnderreplicationManager - Latch countdown due to ZK event: WatchedEvent state:SyncConnected type:NodeChildrenChanged path:/ledgers/underreplication/locks
02:39:30.519 [main-EventThread] INFO  org.apache.bookkeeper.meta.ZkLedgerUnderreplicationManager - Latch countdown due to ZK event: WatchedEvent state:SyncConnected type:NodeChildrenChanged path:/ledgers/underreplication/locks
02:39:30.522 [main-EventThread] INFO  org.apache.bookkeeper.meta.ZkLedgerUnderreplicationManager - Latch countdown due to ZK event: WatchedEvent state:SyncConnected type:NodeChildrenChanged path:/ledgers/underreplication/locks
02:39:30.524 [bookkeeper-io-3-2] INFO  org.apache.bookkeeper.proto.PerChannelBookieClient - Successfully connected to bookie: pulsar-cluster-bookie-3.pulsar-cluster-bookie.pulsar.svc.cluster.local:3181 [id: 0xa9665a84, L:/<IP_ADDRESS>:45976 - R:pulsar-cluster-bookie-3.pulsar-cluster-bookie.pulsar.svc.cluster.local/<IP_ADDRESS>:3181]
02:39:30.524 [bookkeeper-io-3-2] INFO  org.apache.bookkeeper.proto.PerChannelBookieClient - connection [id: 0xa9665a84, L:/<IP_ADDRESS>:45976 - R:pulsar-cluster-bookie-3.pulsar-cluster-bookie.pulsar.svc.cluster.local/<IP_ADDRESS>:3181] authenticated as BookKeeperPrincipal{ANONYMOUS}
02:39:30.524 [bookkeeper-io-3-3] INFO  org.apache.bookkeeper.proto.PerChannelBookieClient - Successfully connected to bookie: pulsar-cluster-bookie-2.pulsar-cluster-bookie.pulsar.svc.cluster.local:3181 [id: 0x0628fbc9, L:/<IP_ADDRESS>:45100 - R:pulsar-cluster-bookie-2.pulsar-cluster-bookie.pulsar.svc.cluster.local/<IP_ADDRESS>:3181]
02:39:30.524 [bookkeeper-io-3-3] INFO  org.apache.bookkeeper.proto.PerChannelBookieClient - connection [id: 0x0628fbc9, L:/<IP_ADDRESS>:45100 - R:pulsar-cluster-bookie-2.pulsar-cluster-bookie.pulsar.svc.cluster.local/<IP_ADDRESS>:3181] authenticated as BookKeeperPrincipal{ANONYMOUS}
02:39:30.527 [ReplicationWorker] INFO  org.apache.bookkeeper.client.DefaultBookieAddressResolver - Cannot resolve pulsar-cluster-bookie-4.pulsar-cluster-bookie.pulsar.svc.cluster.local:3181, bookie is unknown org.apache.bookkeeper.client.BKException$BKBookieHandleNotAvailableException: Bookie handle is not available
02:39:30.527 [ReplicationWorker] ERROR org.apache.bookkeeper.proto.PerChannelBookieClient - Cannot connect to pulsar-cluster-bookie-4.pulsar-cluster-bookie.pulsar.svc.cluster.local:3181 as endpoint resolution failed (probably bookie is down) err org.apache.bookkeeper.proto.BookieAddressResolver$BookieIdNotResolvedException: Cannot resolve bookieId pulsar-cluster-bookie-4.pulsar-cluster-bookie.pulsar.svc.cluster.local:3181, bookie does not exist or it is not running
02:39:30.527 [ReplicationWorker] ERROR org.apache.bookkeeper.proto.PerChannelBookieClient - Could not connect to bookie: null/pulsar-cluster-bookie-4.pulsar-cluster-bookie.pulsar.svc.cluster.local:3181, current state CONNECTING :
org.apache.bookkeeper.proto.BookieAddressResolver$BookieIdNotResolvedException: Cannot resolve bookieId pulsar-cluster-bookie-4.pulsar-cluster-bookie.pulsar.svc.cluster.local:3181, bookie does not exist or it is not running
        at org.apache.bookkeeper.client.DefaultBookieAddressResolver.resolve(DefaultBookieAddressResolver.java:63) ~[org.apache.bookkeeper-bookkeeper-server-4.14.2.jar:4.14.2]
        at org.apache.bookkeeper.proto.PerChannelBookieClient.connect(PerChannelBookieClient.java:531) [org.apache.bookkeeper-bookkeeper-server-4.14.2.jar:4.14.2]
        at org.apache.bookkeeper.proto.PerChannelBookieClient.connectIfNeededAndDoOp(PerChannelBookieClient.java:657) [org.apache.bookkeeper-bookkeeper-server-4.14.2.jar:4.14.2]
        at org.apache.bookkeeper.proto.DefaultPerChannelBookieClientPool.obtain(DefaultPerChannelBookieClientPool.java:121) [org.apache.bookkeeper-bookkeeper-server-4.14.2.jar:4.14.2]
        at org.apache.bookkeeper.proto.DefaultPerChannelBookieClientPool.obtain(DefaultPerChannelBookieClientPool.java:116) [org.apache.bookkeeper-bookkeeper-server-4.14.2.jar:4.14.2]
        at org.apache.bookkeeper.proto.BookieClientImpl.readEntry(BookieClientImpl.java:509) [org.apache.bookkeeper-bookkeeper-server-4.14.2.jar:4.14.2]
        at org.apache.bookkeeper.proto.BookieClientImpl.readEntry(BookieClientImpl.java:495) [org.apache.bookkeeper-bookkeeper-server-4.14.2.jar:4.14.2]
        at org.apache.bookkeeper.proto.BookieClientImpl.readEntry(BookieClientImpl.java:489) [org.apache.bookkeeper-bookkeeper-server-4.14.2.jar:4.14.2]
        at org.apache.bookkeeper.client.PendingReadOp.sendReadTo(PendingReadOp.java:576) [org.apache.bookkeeper-bookkeeper-server-4.14.2.jar:4.14.2]
        at org.apache.bookkeeper.client.PendingReadOp$SequenceReadRequest.sendNextRead(PendingReadOp.java:405) [org.apache.bookkeeper-bookkeeper-server-4.14.2.jar:4.14.2]
        at org.apache.bookkeeper.client.PendingReadOp$SequenceReadRequest.read(PendingReadOp.java:386) [org.apache.bookkeeper-bookkeeper-server-4.14.2.jar:4.14.2]
        at org.apache.bookkeeper.client.PendingReadOp.initiate(PendingReadOp.java:530) [org.apache.bookkeeper-bookkeeper-server-4.14.2.jar:4.14.2]
        at org.apache.bookkeeper.client.PendingReadOp.safeRun(PendingReadOp.java:540) [org.apache.bookkeeper-bookkeeper-server-4.14.2.jar:4.14.2]
        at org.apache.bookkeeper.common.util.SafeRunnable.run(SafeRunnable.java:36) [org.apache.bookkeeper-bookkeeper-common-4.14.2.jar:4.14.2]
        at org.apache.bookkeeper.client.LedgerHandle.readEntriesInternalAsync(LedgerHandle.java:896) [org.apache.bookkeeper-bookkeeper-server-4.14.2.jar:4.14.2]
        at org.apache.bookkeeper.client.LedgerHandle.asyncReadEntriesInternal(LedgerHandle.java:800) [org.apache.bookkeeper-bookkeeper-server-4.14.2.jar:4.14.2]
        at org.apache.bookkeeper.client.LedgerHandle.asyncReadEntries(LedgerHandle.java:694) [org.apache.bookkeeper-bookkeeper-server-4.14.2.jar:4.14.2]
        at org.apache.bookkeeper.replication.ReplicationWorker.tryReadingFaultyEntries(ReplicationWorker.java:326) [org.apache.bookkeeper-bookkeeper-server-4.14.2.jar:4.14.2]
        at org.apache.bookkeeper.replication.ReplicationWorker.rereplicate(ReplicationWorker.java:378) [org.apache.bookkeeper-bookkeeper-server-4.14.2.jar:4.14.2]
        at org.apache.bookkeeper.replication.ReplicationWorker.rereplicate(ReplicationWorker.java:277) [org.apache.bookkeeper-bookkeeper-server-4.14.2.jar:4.14.2]
        at org.apache.bookkeeper.replication.ReplicationWorker.run(ReplicationWorker.java:238) [org.apache.bookkeeper-bookkeeper-server-4.14.2.jar:4.14.2]
        at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30) [io.netty-netty-common-4.1.66.Final.jar:4.1.66.Final]
        at java.lang.Thread.run(Thread.java:829) [?:?]
Caused by: org.apache.bookkeeper.client.BKException$BKBookieHandleNotAvailableException: Bookie handle is not available
        at org.apache.bookkeeper.discover.ZKRegistrationClient.getBookieServiceInfo(ZKRegistrationClient.java:248) ~[org.apache.bookkeeper-bookkeeper-server-4.14.2.jar:4.14.2]
        at org.apache.bookkeeper.client.DefaultBookieAddressResolver.resolve(DefaultBookieAddressResolver.java:43) ~[org.apache.bookkeeper-bookkeeper-server-4.14.2.jar:4.14.2]
        ... 22 more
02:39:30.527 [BookKeeperClientWorker-OrderedExecutor-1-0] INFO  org.apache.bookkeeper.client.PendingReadOp - Error: Bookie handle is not available while reading L92461 E2060 from bookie: pulsar-cluster-bookie-4.pulsar-cluster-bookie.pulsar.svc.cluster.local:3181
02:39:30.528 [ReplicationWorker] INFO  org.apache.bookkeeper.client.DefaultBookieAddressResolver - Cannot resolve pulsar-cluster-bookie-4.pulsar-cluster-bookie.pulsar.svc.cluster.local:3181, bookie is unknown org.apache.bookkeeper.client.BKException$BKBookieHandleNotAvailableException: Bookie handle is not available

i notice the main error log:
ERROR org.apache.bookkeeper.proto.PerChannelBookieClient - Corrupted frame received from bookie:
ERROR org.apache.bookkeeper.client.PendingReadOp - Read of ledger entry failed: L95981 E210-E210, Sent to [pulsar-cluster-bookie-3.pulsar-cluster-bookie.pulsar.svc.cluster.local:3181, pulsar-cluster-bookie-2.pulsar-cluster-bookie.pulsar.svc.cluster.local:3181], Heard from [] : bitset = {}, Error = 'Bookie handle is not available'. First unread entry is (-1, rc = null)
the ledger id  metadata
2:49:10.484 [main] INFO  org.apache.bookkeeper.tools.cli.commands.client.LedgerMetaDataCommand - ledgerID: 95981
02:49:10.490 [main] INFO  org.apache.bookkeeper.tools.cli.commands.client.LedgerMetaDataCommand - LedgerMetadata{formatVersion=3, ensembleSize=3, writeQuorumSize=2, ackQuorumSize=2, state=CLOSED, length=67946172, lastEntryId=2037, digestType=CRC32C, password=base64:, ensembles={0=[pulsar-cluster-bookie-3.pulsar-cluster-bookie.pulsar.svc.cluster.local:3181, pulsar-cluster-bookie-2.pulsar-cluster-bookie.pulsar.svc.cluster.local:3181, pulsar-cluster-bookie-4.pulsar-cluster-bookie.pulsar.svc.cluster.local:3181]}, customMetadata={component=base64:bWFuYWdlZC1sZWRnZXI=, pulsar/managed-ledger=base64:Y29sbGVjdC9kZWZhdWx0L3BlcnNpc3RlbnQvaW9hX2xvZy1wYXJ0aXRpb24tMg==, application=base64:cHVsc2Fy}}

To Reproduce
Steps to reproduce the behavior:

Go to '...'
Click on '....'
Scroll down to '....'
See error

Expected behavior
recovery log is normally
Screenshots

Desktop (please complete the following information):

OS: centos7
pulsar: 2.8.1

Additional context
Add any other context about the problem here.

I had a similar problem，broker log :
[BookKeeperClientWorker-OrderedExecutor-1-0] ERROR org.apache.bookkeeper.client.PendingReadOp - Read of ledger entry failed: L173395 E0-E0, Sent to [pulsar-iot-bookie-1.pulsar-iot-bookie.pulsar-prod.svc.cluster.local:3181, pulsar-iot-bookie-0.pulsar-iot-bookie.pulsar-prod.svc.cluster.local:3181], Heard from [] : bitset = {}, Error = 'No such ledger exists on Bookies'. First unread entry is (-1, rc = null)

Describe :
there are a pulsar cluster in k8s，pulsar version 2.8.2。The purpose is replace new disk.
operating steps：
1、run bin/bookkeeper shell bookieformat -deleteCookie -f
2、restart pod
3、wait bookie auto sync data to new disk
business service run normal, but when restart business service,  Throws the following exception：
Caused by: org.springframework.beans.BeanInstantiationException: Failed to instantiate [so.dian.clover.pulsar.PulsarProducer]: Factory method 'createPulsarProducer' threw exception; nested exception is org.apache.pulsar.client.api.PulsarClientException: java.util.concurrent.ExecutionException: org.apache.pulsar.client.api.PulsarClientException: org.apache.pulsar.broker.service.schema.exceptions.SchemaException: No such ledger exists on Bookies -  ledger=173395 - operation=Failed to read entry - entry=0 caused by org.apache.pulsar.broker.service.schema.exceptions.SchemaException: No such ledger exists on Bookies -  ledger=173395 - operation=Failed to read entry - entry=0
        at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:185)
        at org.springframework.beans.factory.support.ConstructorResolver.instantiate(ConstructorResolver.java:651)
        ... 41 common frames omitted


Modify lifetimes in buffer and buffer_mut methods

Hello,
I had a problem related to lifetimes when I was adding support for the logger in my kernel. I got E0597. Framebuffer must outlive 'static. This was strange for me because the logger code is same that is in the bootloader. But I noticed that the methods buffer() and buffer_mut don't use any lifetime.
With this lifetime annotation in the both methods it works.
Thanks.

This is unsound: Decoupling the lifetime of the FrameBuffer from the returned slice allows creating multiple concurrently-alive mutable references:
// Get two mutable references to the same buffer.
let buffer1 = frame_buffer.buffer_mut();
let buffer2 = frame_buffer.buffer_mut();

// Access the first buffer.
// This shouldn't compile. Calling `buffer_mut` the second time should invalidate the lifetime of `buffer1`.
buffer1[0] = 0;

So, how can we fix my issue? May be using 'static instead.

So, how can we fix my issue? May be using 'static instead.

With these changes, the methods basically already use 'static. Can you provide some of the code which caused the original error?
We could add fn into_buffer(self) -> &'static mut, which would allow creating exactly one mutable static reference.

// kernel/src/main.rs
#![no_std]
#![no_main]
use core::panic::PanicInfo;
use kernel::init_logger;
use bootloader_api::{entry_point, BootInfo, BootloaderConfig, info::Optional};
pub static BOOTLOADER_CONFIG: BootloaderConfig = {
let mut config = BootloaderConfig::new_default();
config.log_level = bootloader_api::config::LevelFilter::Error;
config
};
entry_point!(main, config = &BOOTLOADER_CONFIG);
fn main(bootinfo: &'static mut BootInfo) -> ! {
let framebuffer = core::mem::replace(&mut bootinfo.framebuffer, Optional::None);
let mut framebuffer = framebuffer.into_option().unwrap();
let info = framebuffer.info();
let buffer = framebuffer.buffer_mut();
init_logger(buffer, info);
log::info!("Booting up KERNEL 0.1!");
loop {}
}
#[panic_handler]
fn panic(_info: &PanicInfo) -> ! {
loop {}
}

// kernel/src/lib.rs
#![no_std]
pub mod logger;
use bootloader_api::info::FrameBufferInfo;
pub fn init_logger(framebuffer: &'static mut [u8], info: FrameBufferInfo) {
let logger = logger::LOGGER.call_once(move || logger::LockedLogger::new(framebuffer, info));
log::set_logger(logger).expect("logger already set");
log::set_max_level(log::LevelFilter::Trace);
}

// kernel/src/logger.rs
use bootloader_api::info::{FrameBufferInfo, PixelFormat};
use core::{
fmt::{self, Write},
ptr,
};
use font_constants::BACKUP_CHAR;
use noto_sans_mono_bitmap::{
get_raster, get_raster_width, FontWeight, RasterHeight, RasterizedChar,
};
use spin::{Mutex, once::Once};
/// The global logger instance used for the log crate.
pub static LOGGER: Once = Once::new();
/// A [Logger] instance protected by a spinlock.
pub struct LockedLogger(pub Mutex);
/// Additional vertical space between lines
const LINE_SPACING: usize = 2;
/// Additional horizontal space between characters.
const LETTER_SPACING: usize = 0;
/// Padding from the border. Prevent that font is too close to border.
const BORDER_PADDING: usize = 1;
/// Constants for the usage of the [noto_sans_mono_bitmap] crate.
mod font_constants {
use super::*;
/// Height of each char raster. The font size is ~0.84% of this. Thus, this is the line height that
/// enables multiple characters to be side-by-side and appear optically in one line in a natural way.
pub const CHAR_RASTER_HEIGHT: RasterHeight = RasterHeight::Size16;

/// The width of each single symbol of the mono space font.
pub const CHAR_RASTER_WIDTH: usize = get_raster_width(FontWeight::Regular, CHAR_RASTER_HEIGHT);

/// Backup character if a desired symbol is not available by the font.
/// The '�' character requires the feature "unicode-specials".
pub const BACKUP_CHAR: char = '�';

pub const FONT_WEIGHT: FontWeight = FontWeight::Regular;

}
/// Returns the raster of the given char or the raster of [font_constants::BACKUP_CHAR].
fn get_char_raster(c: char) -> RasterizedChar {
fn get(c: char) -> Option {
get_raster(
c,
font_constants::FONT_WEIGHT,
font_constants::CHAR_RASTER_HEIGHT,
)
}
get(c).unwrap_or_else(|| get(BACKUP_CHAR).expect("Should get raster of backup char."))
}
impl LockedLogger {
/// Create a new instance that logs to the given framebuffer.
pub fn new(framebuffer: &'static mut [u8], info: FrameBufferInfo) -> Self {
LockedLogger(Mutex::new(Logger::new(framebuffer, info)))
}
/// Force-unlocks the logger to prevent a deadlock.
///
/// ## Safety
/// This method is not memory safe and should be only used when absolutely necessary.
pub unsafe fn force_unlock(&self) {
    unsafe { self.0.force_unlock() };
}

}
impl log::Log for LockedLogger {
fn enabled(&self, _metadata: &log::Metadata) -> bool {
true
}
fn log(&self, record: &log::Record) {
    let mut logger = self.0.lock();
    writeln!(logger, "{:5}: {}", record.level(), record.args()).unwrap();
}

fn flush(&self) {}

}
/// Allows logging text to a pixel-based framebuffer.
pub struct Logger {
framebuffer: &'static mut [u8],
info: FrameBufferInfo,
x_pos: usize,
y_pos: usize,
}
impl Logger {
/// Creates a new logger that uses the given framebuffer.
pub fn new(framebuffer: &'static mut [u8], info: FrameBufferInfo) -> Self {
let mut logger = Self {
framebuffer,
info,
x_pos: 0,
y_pos: 0,
};
logger.clear();
logger
}
fn newline(&mut self) {
    self.y_pos += font_constants::CHAR_RASTER_HEIGHT.val() + LINE_SPACING;
    self.carriage_return()
}

fn carriage_return(&mut self) {
    self.x_pos = BORDER_PADDING;
}

/// Erases all text on the screen. Resets `self.x_pos` and `self.y_pos`.
pub fn clear(&mut self) {
    self.x_pos = BORDER_PADDING;
    self.y_pos = BORDER_PADDING;
    self.framebuffer.fill(0);
}

fn width(&self) -> usize {
    1080
}

fn height(&self) -> usize {
    1080
}

/// Writes a single char to the framebuffer. Takes care of special control characters, such as
/// newlines and carriage returns.
fn write_char(&mut self, c: char) {
    match c {
        '\n' => self.newline(),
        '\r' => self.carriage_return(),
        c => {
            let new_xpos = self.x_pos + font_constants::CHAR_RASTER_WIDTH;
            if new_xpos >= self.width() {
                self.newline();
            }
            let new_ypos =
                self.y_pos + font_constants::CHAR_RASTER_HEIGHT.val() + BORDER_PADDING;
            if new_ypos >= self.height() {
                self.clear();
            }
            self.write_rendered_char(get_char_raster(c));
        }
    }
}

/// Prints a rendered char into the framebuffer.
/// Updates `self.x_pos`.
fn write_rendered_char(&mut self, rendered_char: RasterizedChar) {
    for (y, row) in rendered_char.raster().iter().enumerate() {
        for (x, byte) in row.iter().enumerate() {
            self.write_pixel(self.x_pos + x, self.y_pos + y, *byte);
        }
    }
    self.x_pos += rendered_char.width() + LETTER_SPACING;
}

fn write_pixel(&mut self, x: usize, y: usize, intensity: u8) {
    let pixel_offset = y * self.info.stride + x;
    let color = match self.info.pixel_format {
        PixelFormat::Rgb => [intensity, intensity, intensity / 2, 0],
        PixelFormat::Bgr => [intensity / 2, intensity, intensity, 0],
        PixelFormat::U8 => [if intensity > 200 { 0xf } else { 0 }, 0, 0, 0],
        other => {
            // set a supported (but invalid) pixel format before panicking to avoid a double
            // panic; it might not be readable though
            self.info.pixel_format = PixelFormat::Rgb;
            panic!("pixel format {:?} not supported in logger", other)
        }
    };
    let bytes_per_pixel = self.info.bytes_per_pixel;
    let byte_offset = pixel_offset * bytes_per_pixel;
    self.framebuffer[byte_offset..(byte_offset + bytes_per_pixel)]
        .copy_from_slice(&color[..bytes_per_pixel]);
    let _ = unsafe { ptr::read_volatile(&self.framebuffer[byte_offset]) };
}

}
unsafe impl Send for Logger {}
unsafe impl Sync for Logger {}
impl fmt::Write for Logger {
fn write_str(&mut self, s: &str) -> fmt::Result {
for c in s.chars() {
self.write_char(c);
}
Ok(())
}
}

Sorry for the formatting.

Ok, so to fix that, we could either add the into_buffer function I just described, or you could just pass the whole FrameBuffer struct to init_logger instead of passing the buffers. Either should fix the problem.

The first option, will do the same that my change, I think.

The difference is that into_buffer takes ownership of the FrameBuffer, so it's not possible to call into_buffer twice.

OK, thanks! I will create a commit for fixing it.


Enabe a secure way for setting up secrets in cruisecontrol.properties file

Is your feature request related to a problem? Please describe.

Cruise Control can post self-healing and anomaly detection events to a Slack channel.
Connection details for Slack must be provided in cruisecontrol.properties ex slack.self.healing.notifier.webhook property.
Slack's webhook is a secret and should not be presented in clear text ex in a GIT repository.
Koperator assumes cruisecontrol.properties properties defined in KafkaCluster custom resource and therefore value of slack.self.healing.notifier.webhook should be there as well.
Because I don't want keep clear text value in slack.self.healing.notifier.webhook I was looking for a way ex:

refer to a value from a Secret

or refer to a value from ENV variable
but cannot see it's possible now.

Describe the solution you'd like to see
Introduce syntax/[substitution variables] which can be used in ex KafkaCluster CR and be translated by "engine" (operator??) to values from a Secret or env variables.
Describe alternatives you've considered
N/A
Additional context
N/A

Hey @play-io, thanks for you feature request! Did you get to join our Slack channel where we can better felicitate discussion like this?

Hey @play-io, thanks for you feature request! Did you get to join our Slack channel where we can better felicitate discussion like this?

Will do. Thanks!


Organisation field is missing

The 'organisation' field is missing. The API is referring to it as 'organization'

fixed in 0.1.1


Icon display in single line

Need all the users follow button in single line.

I can probably help with this, what file(s) are you working on?

It is in userCard.jsx file and Css filename is _usercard.css

It's fixed, will be part of my next PR


Error when using launch pipline  -- Cannot switch to revision: 2.0

Thanks for the RNAseq flow! I installed the nextflow new release in bioconda after creating a new conda environment.
conda install -c bioconda nextflow
pip install nf-core

Next,  I flowed "Launch pipeline" and get the code. But it always shows error like this
Project nf-core/rnaseq contains uncommitted changes -- Cannot switch to revision: 2.0
When I tried this
nextflow run nf-core/rnaseq -profile test,conda
It shows error like this
dev -- you need to specify explicitly a revision with the option -rto use it
Could you help me?
Thanks a lot!

 That will pull and cache the latest version  of the pipeline locally.

When I do this it pulls 1.4.2 still, revision: 3b6df9bd10. If I try running the test script and specify -r 2.0 the script crashes almost immediately, "failed to pull image".

Can you removing your local cache of the pipeline @RoganGrant rm -rf ~/.nextflow/assets/nf-core/rnaseq/ and trying again. That's a more brute force approach to using nextflow pull and is what I resort to when I have these issues.
The issues pulling the Singularity images is something we haven't really got to the bottom of yet but you could follow the instructions here to download all of the containers for separately and then to run the pipeline.

As always, really appreciate the quick and detailed responses. The linked solution did not end up working. Using test,cfc_dev profile somehow overrode my nextflow config, so slurm rejected all of the spawned jobs due to incorrect partition selection. Using the test,singularity profile still forced a download even after manual. Weirdly, just running several times with a -resume flag eventually led to most tasks completing, but I'm still stuck with the error messages below. The alignment stats are also very poor, which suggests there might be other issues:
-[nf-core/rnaseq] 5/5 samples passed STAR 5% mapped threshold:     6.38%: RAP1_UNINDUCED_R2     7.87%: WT_R1     6.77%: WT_R2     7.08%: RAP1_IAA_30M_R1     6.62%: RAP1_UNINDUCED_R1
[57/ef91fa] NOTE: Process `RNASEQ:PRESEQ_LCEXTRAP (WT_R2)` terminated with an error exit status (1) -- Error is ignored
Error executing process > 'RNASEQ:BEDTOOLS_GENOMECOV (WT_R2)'

Caused by:
  Failed to pull singularity image
  command: singularity pull  --name quay.io-biocontainers-bedtools-2.29.2--hc088bd4_0.img.pulling.1607498813756 docker://quay.io/biocontainers/bedtools:2.29.2--hc088bd4_0 > /dev/null
  status : 255
  message:
    INFO:    Converting OCI blobs to SIF format
    INFO:    Starting build...
    Getting image source signatures
    Copying blob sha256:1dbcab28ce46b65c0174e5e82658492107396fead31e9144c343e6bc96e471c7
    Copying blob sha256:cfb1ba34637d96787f6e780192bc5f09c04fe0b40c4e1acdcbc88953bce25b5b
    Copying blob sha256:ace2d8a63dd59063206661355f22da9e1c75c56d6cae5116d91db7a65f640667
    Copying blob sha256:75c080ef15ebb28daeadc91eeda0ca95a893fe1f4e55845da3feb58069d42fdc
    Copying blob sha256:316957f8baafcefd4c9f72b7e3f3fafb7fcb3ca805dc69d242aef656e0736490
    Copying blob sha256:dbd31e1d863d4a41565c08ad1d419c3a3538abfdd4a7971de63b8c5c8a43caec
    Copying blob sha256:2f8531d5a6ece34772cf99a2d30e3057c636f1ad05cdec0c8009eab401e616a7
    Copying blob sha256:1dbcab28ce46b65c0174e5e82658492107396fead31e9144c343e6bc96e471c7
    Copying blob sha256:a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4
    Copying blob sha256:2e178fd72baf28bc587b5d274574f1a3d3e25ac802fdaf154af258a3c5891831
    Copying blob sha256:a3ed95caeb02ffe68cdd9fd84406680ae93d633cb16422d00e8a7c22955b46d4
    Copying blob sha256:3f1e2e7827a167b8a67633921587a184faf38c5d410a6500ff094dcb49198002
    Copying config sha256:761ef0f9dd69b0391b5f10e3a41c80ece35a7fa5039a255f404514ffa1c2539d
    Writing manifest to image destination
    Storing signatures
    FATAL:   While making image from oci registry: error fetching image to cache: while building SIF from layers: conveyor failed to get: no descriptor found for reference "50b185c2e2cd8047d9e64183075153c9627d40068145552abc68c767a4e146a0"

Sorry -profile test,cfc_dev was the profile that the users in that particular issue were using i.e. it was the profile for their cluster and definitely won't be the same for you unless you work with them! 😅 Sorry, should have clarified. You need to use whichever profiles you would normally use to run nf-core pipeline locally.
The alignment stats are poor because the test-datasets probably needs to be updated so that's expected. Maybe you didn't set NXF_SINGULARITY_CACHEDIR properly because Nextflow should find the pre-downloaded images from step (1) and not download them from scratch if you have specified that correctly.
But yes, this issue with multiple -resume to eventually get the containers for the pipeline is why I uploaded them to Dropbox. Just so that you can avoid this error by just directly downloading them as a tar archive instead of Nextflow having to download and convert Docker -> Singularity images.
Hope that helps!

Tidying up issues before the next release guys. Seeing as the problems reported here don't seem like actual bugs (and the fact that we have other issues where this is applicable) I will close this but feel free to come and find us on the #rnaseq channel on nf-core Slack.


Don't work with Angular 2 template syntax

Angular 2 makes use of case-sensitive attributes.
For this test I have this html:
<nav>
      <span>
        <a [routerLink]=" ['./'] ">
          Index
        </a>
      </span>
</nav>

If I run:
$ html2hade test.html --bodyless

I get:
nav
  span
    a([routerlink]=" ['./'] ")
      | Index

As you can see, now the attribute routerLink is in lowercase, routerlink, and doesn't work anymore with Angular.
I tried with -s and --donotencode, same results.

This is related to #102 and share root cause: DOM parser used (jsdom) either did not or does not preserve case.

Hi @donpark, oh I see jsdom-little isn't updated from 2 years :/
Do you have any plan to solve this? Changing the DOM parser or something like this? Oh and sorry for duplicate issues, I made a search but didn't found that one.

@desaroger well, this issue calls for a major change which will very likely disturb existing users so I think it's best to fork.
@aichholzer any plan to address this issue?

@desaroger a complete re-write is on the way. I will revisit this issue when I get there. Thank you for reporting it.

@aichholzer Thanks, happy to see a resolution for this issue as I use html2jade all the time, and just now getting into Angular2 with case-sensitive dom elements.  Thanks!

Same with ngModel


GH-39390: [C++] Thirdparty: bump default zlib to 1.3

Rationale for this change

This patch bump default zlib to 1.3 (currently we're default using 1.2.13 as default). 1.3 includes some bugfixes.
What changes are included in this PR?

Update vendor in arrow
Are these changes tested?
Maybe we already has tests?

Are there any user-facing changes?
no

Closes: #39390

@github-actions crossbow submit -g cpp -g wheel -g r

@pitrou Would you mind take a look?

@github-actions crossbow submit -g nightly-tests -g r

Emmm don't know whether failed ut is related
[ RUN      ] TestAzuriteFileSystem.CreateDirFailureDirectoryWithMissingContainer
unknown file: Failure
C++ exception with description "Connection closed before getting full response or response is less than expected. Expected response length = 254. Read until now = 231" thrown in the test body.

Also is this a new flacky test?

I don't think they are related. I have restarted the jobs.

Hi,
Trying to build cpp dependencies for Java JNI libraries and receiving the following error message:
$ arrow/java: mvn generate-resources -Pgenerate-libs-jni-macos-linux -N
...
-- Downloading...
   dst='/Users/dsusanibar/Documents/business/voltron/fork/vibhatha/arrow/cpp-jni/zlib_ep-prefix/src/zlib-1.3.tar.gz'
   timeout='none'
   inactivity timeout='none'
-- Using src='https://zlib.net/fossils/zlib-1.3.tar.gz'
-- verifying file...
       file='/Users/dsusanibar/Documents/business/voltron/fork/vibhatha/arrow/cpp-jni/zlib_ep-prefix/src/zlib-1.3.tar.gz'
-- SHA256 hash of
    /Users/dsusanibar/Documents/business/voltron/fork/vibhatha/arrow/cpp-jni/zlib_ep-prefix/src/zlib-1.3.tar.gz
  does not match expected value
    expected: 'ff0ba4c292013dbc27530b3a81e1f9a813cd39de01ca5e0f8bf355702efa593e'
      actual: '92e1f7b660b942a8365b54da7f098d4ed04f2d68f0219dfd192f2002b1d648f0'
-- Hash mismatch, removing...

Then if I change the hash to ff0ba4c292013dbc27530b3a81e1f9a813cd39de01ca5e0f8bf355702efa593e I am seeing:
$ arrow/java: mvn generate-resources -Pgenerate-libs-jni-macos-linux -N
...
-- stderr output is:
CMake Error at zlib_ep-stamp/download-zlib_ep.cmake:170 (message):
  Each download failed!

    error: downloading 'https://apache.jfrog.io/artifactory/arrow/thirdparty/7.0.0/zlib-1.3.tar.gz' failed
          status_code: 22
          status_string: "HTTP response code said error"
          log:

I've uploaded https://apache.jfrog.io/artifactory/arrow/thirdparty/7.0.0/zlib-1.3.tar.gz as a mirror.