Edited nb.coffee

Dratz. lots of double work here! https://github.com/codecombat/codecombat/pull/2261

Ops, sorry. Didn't see. Guess I took for granted I was the only one working on this.

Got it all merged–sorry about that. Thank for such heroic double Norwegian translation! If you notice any strings that seem better translated in one version than the version that I merged in, please feel free to send another pull request with those updates.

Didn't seem that there was too much overlap, in fact :)  Someone should remove the "no" language.  The languages here are "nb" and "nn". "no" is deprecated, I believe.

Ah, perhaps! Can you tell me:

Which browser accept-languages will browsers send when set to various Norwegian language branches?
Which versions of Norwegian will which people use?

Good stuff!
Yea, "no" is probably no good. Like @mogsie says "nb" and "nn" are the ones being used. "nb" will be the most common one. "nn" is kind of a secondary written language.

@nwinter:
nb = "Norwegian Bokmål", used in many populous parts of the country, including the capital.
nn = "Norwegian Nynorsk", used in many other populous and not so populous parts.
A windows (only Vista :( ) machine I have access to has "Norwegian Bokmål" locale, and sends these Accept-Language headers:
Chrome/Windows: nb-NO,nb,no,nn,en-US  (with decreasing qualities)
FF/Windows: nb-no,nb,no-no,no,nn-no,nn,en-us (also decreasing q values)
IE10/Windows: nb-NO
Pretty sure a machine with "Norwegian Nynorsk" would see "nn" somehow first in the list. :)
Now we need to find someone with the time to translate nn.coffee!
Historically there was a no locale, but it was deprecated and removed by operating systems a long time ago.

@matifol I'll do some post-merge cleanup. Some of  your edits were better than mine ;-)

Okay, I just tested and when I set Chrome to nn, it doesn't even ask for no. So fallback between nb, nn, and no wouldn't work anyway. Let's remove no.coffee. Is there anything in there that should be migrated, or is it all redundant?

I think it's al redundant. We have it if we need it :)

Thanks @mogsie, good stuff :-)


MySQL Operator used with *.sql file

Hi,
I am trying to use a collection of SQL statements (that need to be carried out in the right order) stored in a *.sql file. Airflow detects the file and starts processing it but then the throws this error:
2015-09-07 11:37:53,838 - root - ERROR - (2014, "Commands out of sync; you can't run this command now")
The database I use is MySQL. I believe this is not Airflow causing the issue but presumably some of the used libraries or I am missing to set some argument properly.
If I copy&paste my SQL Script into SQL Workbench it runs smoothly, so I would exclude an error in the SQL statements itself.
Thanks for any help

You cannot do that? only one sql command can be accept in mysql_hook.
I have reported it at
https://github.com/airbnb/airflow/issues/329

alright, that clarifies it. In this case I misunderstood the instructions for the mysql operator:
'''sql (Can receive a str representing a sql statement, a list of str (sql statements), or reference to a template file. Template reference are recognized by str ending in ‘.sql’) – the sql code to be executed'''
thanks for clarification

You can pass it as a list of statements, but not a reference to a multi-statement sql script. DbApi doesn't seem to expose a standard way to run a script (multi-statements - separated by semicolons). That's usually a CLI feature.
Related:
http://stackoverflow.com/questions/4408714/execute-sql-file-with-python-mysqldb
So solutions are:

Users break their scripts down into lists, either by parsing the file themselves (f = open('foo.sql')) in their pipeline script, or writing sql = [...] in their script
The operator(s) logic could apply a regex that looks for semi-colons and breaks down the statements, trying to avoid the pitfalls (semi-colons in a sql string, ...)
Writing alternate hooks that wraps the CLI (I think that's overkill, less desirable). That's what we did for Hive since we needed perfect compatibility there and had a lot of hql files to run.

For now option 1 works and doesn't require a new version out or anything...

It it's important enough to someone I'll be happy to review the PR


Redis error: ERR Client sent AUTH, but no password is set

When trying to access the markets:
Started GET "/api/v2/k_with_pending_trades.json?market=btccny&limit=768&period=60&trade_id=0" for ::1 at 2017-12-19 19:54:02 +0200

Redis::CommandError - ERR Client sent AUTH, but no password is set:
  app/api/api_v2/helpers.rb:95:in `get_k_json'
  app/api/api_v2/k.rb:25:in `block in <class:K>'
  lib/middleware/security.rb:11:in `call'
  lib/middleware/i18n_js.rb:9:in `call'

Needed to strip the password requirement in kline_db.rb to make it work. Probably my own redis installation needs to be reinstalled.

@propercoil I have this error too but I have caught it in k.rb:
/Users/yaroslav/.rbenv/versions/2.4.2/lib/ruby/gems/2.4.0/gems/redis-4.0.1/lib/redis/client.rb:119:in `call': ERR Client sent AUTH, but no password is set (Redis::CommandError)
	from /Users/yaroslav/.rbenv/versions/2.4.2/lib/ruby/gems/2.4.0/gems/redis-4.0.1/lib/redis/client.rb:100:in `block in connect'
	from /Users/yaroslav/.rbenv/versions/2.4.2/lib/ruby/gems/2.4.0/gems/redis-4.0.1/lib/redis/client.rb:291:in `with_reconnect'
	from /Users/yaroslav/.rbenv/versions/2.4.2/lib/ruby/gems/2.4.0/gems/redis-4.0.1/lib/redis/client.rb:98:in `connect'
	from /Users/yaroslav/.rbenv/versions/2.4.2/lib/ruby/gems/2.4.0/gems/redis-4.0.1/lib/redis/client.rb:363:in `ensure_connected'
	from /Users/yaroslav/.rbenv/versions/2.4.2/lib/ruby/gems/2.4.0/gems/redis-4.0.1/lib/redis/client.rb:219:in `block in process'
	from /Users/yaroslav/.rbenv/versions/2.4.2/lib/ruby/gems/2.4.0/gems/redis-4.0.1/lib/redis/client.rb:304:in `logging'
	from /Users/yaroslav/.rbenv/versions/2.4.2/lib/ruby/gems/2.4.0/gems/redis-4.0.1/lib/redis/client.rb:218:in `process'
	from /Users/yaroslav/.rbenv/versions/2.4.2/lib/ruby/gems/2.4.0/gems/redis-4.0.1/lib/redis/client.rb:118:in `call'
	from /Users/yaroslav/.rbenv/versions/2.4.2/lib/ruby/gems/2.4.0/gems/redis-4.0.1/lib/redis.rb:1241:in `block in lindex'
	from /Users/yaroslav/.rbenv/versions/2.4.2/lib/ruby/gems/2.4.0/gems/redis-4.0.1/lib/redis.rb:45:in `block in synchronize'
	from /Users/yaroslav/.rbenv/versions/2.4.2/lib/ruby/2.4.0/monitor.rb:214:in `mon_synchronize'
	from /Users/yaroslav/.rbenv/versions/2.4.2/lib/ruby/gems/2.4.0/gems/redis-4.0.1/lib/redis.rb:45:in `synchronize'
	from /Users/yaroslav/.rbenv/versions/2.4.2/lib/ruby/gems/2.4.0/gems/redis-4.0.1/lib/redis.rb:1240:in `lindex'
	from lib/daemons/k.rb:18:in `last_ts'
	from lib/daemons/k.rb:23:in `next_ts'
	from lib/daemons/k.rb:114:in `block in <main>'
	from lib/daemons/k.rb:113:in `each'
	from lib/daemons/k.rb:113:in `<main>'

BTW I have clean redis installation with default configs

@propercoil The problem is that default application.yml is shipped with REDIS_PASSWORD: changeme which is sent when redis client connect to the server. But if server doesn't expect passsword to be sent when connecting it will respond with an error like your's. So the fix is to set REDIS_PASSWORD to nil.
PR is ready which fixes it #143


updated supported platforms to include Windows Server

Docs Build status updates of commit b908972:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

microsoft-edge/hosting/WebView2.md
:white_check_mark:Succeeded

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.

Docs Build status updates of commit 0f3404b:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

microsoft-edge/hosting/WebView2.md
:white_check_mark:Succeeded

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.


[BUG] TypeError: 'ColumnSelector' object is not iterable

Describe the bug
Running the Advanced-ops-outbrain example Jupyter notebook, receiving this error in notebook 02-ETL-with-NVTabular.ipynb. Any help to fix/workaround would be appreciated.
---------------------------------------------------------------------------
TypeError                                 Traceback (most recent call last)
/tmp/slurmtmp.15549263/ipykernel_11964/293101681.py in <module>
      3
      4 # Calculate statistics on the training set'
----> 5 workflow.fit(train_dataset)

~/NVTabular/nvtabular/workflow/workflow.py in fit(self, dataset)
    176
    177         if not self.output_schema:
--> 178             self.fit_schema(dataset.schema)
    179
    180         ddf = dataset.to_ddf(columns=self._input_columns())

~/NVTabular/nvtabular/workflow/workflow.py in fit_schema(self, input_schema)
    142             for node in current_phase:
    143                 if not node.parents:
--> 144                     node.compute_schemas(input_schema)
    145                 else:
    146                     combined_schema = sum(

~/NVTabular/nvtabular/workflow/node.py in compute_schemas(self, root_schema)
    121         # output schema. If there's no op, then outputs are just the inputs
    122         if self.op:
--> 123             self.output_schema = self.op.compute_output_schema(self.input_schema, self.selector)
    124         else:
    125             self.output_schema = self.input_schema

~/NVTabular/nvtabular/ops/operator.py in compute_output_schema(self, input_schema, col_selector)
     84             col_selector._tags = []
     85
---> 86         col_selector = self.output_column_names(col_selector)
     87
     88         for column_name in col_selector.names:

/tmp/slurmtmp.15549263/ipykernel_11964/3825726079.py in output_column_names(self, columns)
     18
     19     def output_column_names(self, columns):
---> 20         return nvt.ColumnSelector([column + "_since_published" for column in columns])
     21
     22     def dependencies(self):

TypeError: 'ColumnSelector' object is not iterable

Steps/Code to reproduce bug
Error when running code block:
train_dataset = nvt.Dataset(train_filename)
valid_dataset = nvt.Dataset(valid_filename)

# Calculate statistics on the training set
workflow.fit(train_dataset)

in notebook 02-ETL-with-NVTabular.ipynb, advanced OPs with Outbrain.
Expected behavior
Notebook should continue to run.
Environment details (please complete the following information):
We are running the notebooks on Ohio Supercomputer Laboratory's pitzer cloud computing system. CUDA version 11.0.3, miniconda3 4.10.3-py37

I believe the output_column_names method on the custom op being defined in the notebook should read like this (which it does on the current main branch but is likely a recent fix that may not be present in older versions):
class DaysSincePublished(Operator):
...

    def output_column_names(self, columns):
        return nvt.ColumnSelector([column + "_since_published" for column in columns.names])
...

(Note the .names at the end of the line.)

Hey Karl,
Thanks for the reply. Updating my repo seems to have fixed this specific error.
I appreciate the assistance.


Expose the applyChangedToOpenFiles internal TS Server command

Request
VS Code would like to use the  applyChangedToOpenFiles TS Server command in order to more efficiently perform batch files changes #29598. This command is currently marked internal
(Possibly also change the command name to applyChangesToOpenFiles)

@mjbvz as part for this, I am assuming you are going to be sending changes to be applied to the existing files as well. Currently changed Open file takes list of file name and corresponding list of text span and new string to be applied in the file. But ChangeRequest that vscode uses takes start and end line and offset. What do you intend to use here ? Start and End positions or their line and offset positions?
    /**
     * Arguments to ApplyChangedToOpenFilesRequest
     */
    /* @internal */
    export interface ApplyChangedToOpenFilesRequestArgs {
        /**
         * List of newly open files
         */
        openFiles?: ExternalFile[];
        /**
         * List of open files files that were changes
         */
        changedFiles?: ChangedOpenFile[];
        /**
         * List of files that were closed
         */
        closedFiles?: string[];
    }

    /**
     * Arguments for change request message.
     */
    export interface ChangeRequestArgs extends FormatRequestArgs {
        /**
         * Optional string to insert at location (file, line, offset).
         */
        insertString?: string;
    }

Also the changes are applied in reverse order in the current request format. Is that what is expected for new command?

I think start/end positions would be the most consistent. This is how change and format work. There's a CodeEdit type in the server protocol that may work for this.
I would also expect that the changes are made in array order, instead of in reverse order


Hapi v17 support

Will this plugin be supported in hapi v17? It's listed as an official plugin in the hapi website.

I'll look into what needs to be done soon.

No news?

So there's no support for Hapi v17 yet?

Does anyone can find a way to use socket.io with Hapi v17 ?

Sorry for the lack of updates.
I've started porting this plugin to hapi v17 here: https://github.com/sibartlett/hapi-io/pull/72

Hello, thanks for your work !
When do plan to release the compatibility with hapi v17+, please ?
Thanks.

Hey, love this package!
Has compatibility with hapi v17+ been released ?
Thanks.


Fix diff key encoding opt

The keyEncoding option to createDiffStream is currently being ignored.

2.4.1


Replication failing with parameter group error. What am I missing?

Hello friends,
I am working on creating a RDS replica from MySQL. It's unfortunately not working. I am getting a parameter group error. What am I missing?  Terraform version : Terraform v0.12.24
Error log :

Error: Invalid default value for variable

  on .terraform/modules/replica/terraform-aws-rds-2.0.0/modules/db_parameter_group/variables.tf line 38, in variable "parameters":
  38:   default     = {}

This default value is not compatible with the variable's type constraint: list
of map of string required.

Code :

data "aws_security_group" "default" {
  vpc_id = module.vpc.vpc_id
  name   = "default"
}

module "replica" {
  source = "terraform-aws-modules/rds/aws"
  version = "2.0"

  identifier = "terraformdb-replica"

  # Source database. For cross-region use this_db_instance_arn
  replicate_source_db = “OURARN”

  engine = "${local.engine}"
  engine_version = "${local.engine_version}"
  instance_class = "${local.instance_type}"
  allocated_storage = "20"

  # Username and password should not be set for replicas
  username = ""
  password = ""
  port = "${local.db_port}"
  #family = "${locals.db_family}"
  #major_engine_version = "${locals.db_major_engine_version}"

  maintenance_window = "Mon:00:00-Mon:02:00"
  backup_window = "02:00-04:00"

  vpc_security_group_ids = [aws_security_group.default.id]
  subnet_ids = "${module.vpc.public_subnets.ids}"
  enabled_cloudwatch_logs_exports = "${local.export_cloudwatch_log_types}"

  multi_az = false

  # disable backups to create DB faster
  backup_retention_period = 0

}

I'm getting the same  "list of map of string required" error, what did you do to resolve?


Add zero downtime deployment

Description
This is to deploy openwhisk without downtime on the same nodes.
Also this will address the regression mentioned here.
Related issue and scope

[ ] I opened an issue to propose and discuss this change (#????)

My changes affect the following components

[x] API
[x] Controller
[ ] Message Bus (e.g., Kafka)
[ ] Loadbalancer
[x] Scheduler
[x] Invoker
[ ] Intrinsic actions (e.g., sequences, conductors)
[ ] Data stores (e.g., CouchDB)
[ ] Tests
[x] Deployment
[ ] CLI
[ ] General tooling
[ ] Documentation

Types of changes

[x] Bug fix (generally a non-breaking change which closes an issue).
[x] Enhancement or new feature (adds new functionality).
[ ] Breaking change (a bug fix or enhancement which changes existing behavior).

Checklist:

[x] I signed an Apache CLA.
[x] I reviewed the style guides and followed the recommendations (Travis CI will check :).
[ ] I added tests to cover my changes.
[ ] My changes require further changes to the documentation.
[ ] I updated the documentation where necessary.

Codecov Report

Merging #5338 (e2219df) into master (ef725a6) will decrease coverage by 76.86%.
The diff coverage is 0.00%.

:exclamation: Current head e2219df differs from pull request most recent head 8444e58. Consider uploading reports for the commit 8444e58 to get more accurate results

@@            Coverage Diff             @@
##           master   #5338       +/-   ##
==========================================
- Coverage   81.38%   4.52%   -76.87%
==========================================
  Files         240     240
  Lines       14313   14357       +44
  Branches      610     581       -29
==========================================
- Hits        11649     650    -10999
- Misses       2664   13707    +11043

Impacted Files
Coverage Δ

.../org/apache/openwhisk/core/connector/Message.scala
13.51% <ø> (-56.31%)
:arrow_down:

.../apache/openwhisk/core/controller/Controller.scala
0.00% <0.00%> (-91.27%)
:arrow_down:

...enwhisk/core/loadBalancer/CommonLoadBalancer.scala
0.00% <0.00%> (-78.58%)
:arrow_down:

.../openwhisk/core/loadBalancer/FPCPoolBalancer.scala
0.00% <0.00%> (-33.21%)
:arrow_down:

...che/openwhisk/core/loadBalancer/LoadBalancer.scala
0.00% <ø> (-81.82%)
:arrow_down:

...ontainerpool/v2/FunctionPullingContainerPool.scala
0.00% <0.00%> (-82.88%)
:arrow_down:

...ntainerpool/v2/FunctionPullingContainerProxy.scala
0.00% <ø> (-78.41%)
:arrow_down:

.../openwhisk/core/invoker/DefaultInvokerServer.scala
0.00% <0.00%> (-100.00%)
:arrow_down:

...he/openwhisk/core/invoker/FPCInvokerReactive.scala
0.00% <0.00%> (ø)

...ache/openwhisk/core/invoker/FPCInvokerServer.scala
0.00% <0.00%> (-76.93%)
:arrow_down:

... and 219 more

:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more

I could successfully test this feature.

When a new version of a scheduler and an invoker are newly deployed, there is no queue and container.
So when a new version of a controller is deployed, it should create a queue and a container first accordingly wait time increases.
But every single activation was successfully invoked without any failure during the deployment.
We can see no error happened in the above screenshot.
Regarding the wait-time increase, I think it's orthogonal to this PR and we can improve it in a subsequent PR.
Controllers
[2022-10-23T06:05:01.123Z] [INFO] [#tid_efb449d34d9fe0f7ce3afea3222e2338] POST /api/v1/namespaces/guest/actions/noop30 blocking=true&result=true&volatile=true
[2022-10-23T06:05:01.182Z] [INFO] [#tid_efb449d34d9fe0f7ce3afea3222e2338] [FPCPoolBalancer] posted to scheduler0[0][51090548]
[2022-10-23T06:05:01.182Z] [INFO] [#tid_efb449d34d9fe0f7ce3afea3222e2338] [FPCPoolBalancer] Created queue successfully for<EMAIL_ADDRESS>on scheduler0
[2022-10-23T06:05:08.430Z] [INFO] [#tid_efb449d34d9fe0f7ce3afea3222e2338] [FPCPoolBalancer] received completion ack for '69a85a8cd2294ea5a85a8cd229aea531', system error=false
[2022-10-23T06:05:08.433Z] [INFO] [#tid_efb449d34d9fe0f7ce3afea3222e2338] [FPCPoolBalancer] received result ack for '69a85a8cd2294ea5a85a8cd229aea531'

schedulers
[2022-10-23T06:05:01.189Z] [INFO] [#tid_efb449d34d9fe0f7ce3afea3222e2338] [QueueManager] Got activation message 69a85a8cd2294ea5a85a8cd229aea531 for<EMAIL_ADDRESS>from kafka.
[2022-10-23T06:05:01.190Z] [INFO] [#tid_efb449d34d9fe0f7ce3afea3222e2338] [MemoryQueue] [guest:guest/noop30@0.0.1:Running] got a new activation message 69a85a8cd2294ea5a85a8cd229aea531

[2022-10-23T06:05:01.302Z] [INFO] [#tid_sid_unknown] [SchedulingDecisionMaker] add one container if totalContainers(0) == 0 && availableMsg(1) > 0<EMAIL_ADDRESS>[2022-10-23T06:05:01.302Z] [INFO] [#tid_sid_unknown] [MemoryQueue] [guest:guest/noop30@0.0.1:Running] Try to create a new container with creationId e3182d5e23a34ed9982d5e23a3aed9f3
[2022-10-23T06:05:01.303Z] [INFO] [#tid_sid_unknown] [ContainerManager] received 1 creation message<EMAIL_ADDRESS>[2022-10-23T06:05:01.306Z] [INFO] [#tid_sid_unknown] [ContainerManager] usable total invoker size: 4
[2022-10-23T06:05:01.306Z] [INFO] [#tid_sid_unknown] [ContainerManager] 1 creation messages for<EMAIL_ADDRESS>managedFraction:1.0, blackboxFraction:1.0, managed invoker size:4, blackboxes invoker size:4
[2022-10-23T06:05:01.306Z] [INFO] [#tid_sid_unknown] [ContainerManager]<EMAIL_ADDRESS>looking for managed invokers to schedule.
[2022-10-23T06:05:01.309Z] [INFO] [#tid_sid_containerCreation] [ContainerManager] posted creationId: e3182d5e23a34ed9982d5e23a3aed9f3 for<EMAIL_ADDRESS>to invoker0[0][13720]
[2022-10-23T06:05:04.233Z] [INFO] [#tid_IH8hZVMxCVzB5xW7KcMsgGiSr6X81Hz9] [MemoryQueue] [guest:guest/noop30@0.0.1:Running] Get activation request 431fdb1966598b9299d4905ac6cc76a223032352eabe06b667e9166c6671126f, send one message: 69a85a8cd2294ea5a85a8cd229aea531

Invokers
[2022-10-23T06:05:02.780Z] [INFO] [#tid_sid_unknown] [FunctionPullingContainerPool] received a container creation message: e3182d5e23a34ed9982d5e23a3aed9f3
[2022-10-23T06:05:02.828Z] [INFO] [#tid_sid_invokerColdstart] [DockerClientWithFileAccess] running /usr/bin/docker run -d --cpu-shares 25 --memory 256m --memory-swap 256m --network bridge -e __OW_API_HOST=https://<IP_ADDRESS> -e __OW_ALLOW_CONCURRENT=false --name wsk00_19_guest_noop30 --cap-drop NET_RAW --cap-drop NET_ADMIN --ulimit nofile=1024:1024 --pids-limit 1024 --log-driver json-file openwhisk/action-nodejs-v14:nightly (timeout: 1 minute)
[2022-10-23T06:05:04.224Z] [INFO] [#tid_sid_unknown] [WatcherService] watch endpoint: WatchEndpoint(bmt-new-110/namespace/guest/guest/noop30/15-e0e9a79b4d38b0b010f35023a7464ef6/invoker0/container/431fdb1966598b9299d4905ac6cc76a223032352eabe06b667e9166c6671126f,,false,data-management-service,Set(DeleteEvent))
[2022-10-23T06:05:04.227Z] [INFO] [#tid_sid_unknown] [FPCInvokerReactive] Posted success ack of container creation e3182d5e23a34ed9982d5e23a3aed9f3 for<EMAIL_ADDRESS>[2022-10-23T06:05:04.240Z] [INFO] [#tid_efb449d34d9fe0f7ce3afea3222e2338] [FunctionPullingContainerProxy] received a message 69a85a8cd2294ea5a85a8cd229aea531 for<EMAIL_ADDRESS>in ClientCreated
[2022-10-23T06:05:04.240Z] [INFO] [#tid_efb449d34d9fe0f7ce3afea3222e2338] [DockerContainer] sending initialization to ContainerId(431fdb1966598b9299d4905ac6cc76a223032352eabe06b667e9166c6671126f) ContainerAddress(<IP_ADDRESS>,8080)
[2022-10-23T06:05:05.087Z] [INFO] [#tid_efb449d34d9fe0f7ce3afea3222e2338] [DockerContainer] initialization result: ok
[2022-10-23T06:05:05.087Z] [INFO] [#tid_efb449d34d9fe0f7ce3afea3222e2338] [DockerContainer] sending arguments to /guest/noop30 at ContainerId(431fdb1966598b9299d4905ac6cc76a223032352eabe06b667e9166c6671126f) ContainerAddress(<IP_ADDRESS>,8080)
[2022-10-23T06:05:05.096Z] [INFO] [#tid_efb449d34d9fe0f7ce3afea3222e2338] [DockerContainer] running result: ok
[2022-10-23T06:05:05.099Z] [INFO] [#tid_efb449d34d9fe0f7ce3afea3222e2338] [MessagingActiveAck] posted result of activation 69a85a8cd2294ea5a85a8cd229aea531
[2022-10-23T06:05:05.100Z] [INFO] [#tid_efb449d34d9fe0f7ce3afea3222e2338] [MessagingActiveAck] posted completion of activation 69a85a8cd2294ea5a85a8cd229aea531

As per the above logs, we can see that it took around 200ms for the controller to send a queue creation and the scheduler to send a container creation request. But it took around 1.4s for invokers to receive the creation request, it took another 1.4s for the invoker to create a container. Another thing is it took around 3.3s for the controller to actually receive the activation ack after the invoker sent the acks.
I think this is still an improvement point especially regarding Kakfa messing.
Anyway, I have achieved what I wanted, I would include https://github.com/apache/openwhisk/pull/5334 into this PR and update all CI tests.

I'm curious on the test. Do you think that the additional latency could just be waiting for the kafka consumer / producer to start up? If so that should be rather easy to fix to just wait for the message feed to acknowledge it's finished initializing before marking the service healthy to accept traffic.

It would be worth analyzing further, though each component has its own warm-up procedure.
Each component has its own warm-up procedure.

PoolBalancer
ContainerManager
InvokerReactive

When a new scheduler endpoint is inserted in ETCD, controllers and invokers warm up the path.
When an invoker endpoint is inserted, schedulers warm up the container creation path.
Finally, controllers invoke a warm-up activation during the deployment time.
It would be great to double-check the above functionality but I hope that is handled in the subsequent PR as this PR is getting bigger.

Also would be helpful knowing the exact series of restart events with the graph you shared. Are one of each component all being restarted at once? Would we see the same increased latency if we did the controller restart, the scheduler restart, the invoker restart all isolated from one another?

Let me share the procedures.
(Prerequisite) It's important to change the serial value for each component to 1.
cat > ${OPENWHISK_HOME}/ansible/invoker.yml << EOL
---
# This playbook deploys Openwhisk Invokers.

- hosts: invokers
  vars:
    host_group: "{{ groups['invokers'] }}"
    name_prefix: "invoker"
    invoker_index_base: 0
  serial: '${INVOKER_SERIAL}' ### this should be 1
  roles:
  - invoker
EOL

So all components are deployed one by one.
Deploy OpenWhisk in multiple steps.
I deployed OW in multiple steps and the deployment order is slightly different.
  if [ "$STEP" == "1" ]; then
      ## step 1
      $ANSIBLE_CMD invoker.yml --limit invokers[0:3] # 4 normal invokers
      $ANSIBLE_CMD scheduler.yml --limit schedulers[0:0] # 3 schedulers
      $ANSIBLE_CMD controller.yml --limit controllers[0:0] # 2 controllers
  fi
  if [ "$STEP" == "2" ]; then
      ## step 2
      $ANSIBLE_CMD controller.yml --limit controllers[1:1] # left 1 controller
      $ANSIBLE_CMD scheduler.yml --limit schedulers[1:1] # left 1 schedulers
      $ANSIBLE_CMD invoker.yml --limit invokers[4:6]  # 3 invokers
  fi
  if [ "$STEP" == "3" ]; then
      ## step 3
      $ANSIBLE_CMD controller.yml --limit controllers[2:2] # left 1 controller
      $ANSIBLE_CMD scheduler.yml --limit schedulers[2:2] # left 1 schedulers
      $ANSIBLE_CMD invoker.yml --limit invokers[7:9]  # 3 invokers
  fi

First, with the assumption that all components support graceful shutdown, we need to disable and deploy some invokers.
Once invokers are deployed, they have a different etcd prefix with old invokers, no request is sent to them from old schedulers.
Second, we can disable and deploy one scheduler.
Once the scheduler is deployed, it also has a different prefix and no request is sent to this scheduler from old controllers.
At this point, schedulers and invokers are idle.
Third, we deploy one controller. During the deployment, the controller is removed from nginx. So no request is sent to the controller. Once it is deployed, it can only see the newly deployed scheduler and invokers. After then it is re-added to Nginx.
So there are two versions of OW running at this point.
After one step is finished, now we can deploy components in reverse order as there are already available schedulers and invokers.
Since the serial value of each component is 1, we don't necessarily need to split the procedure into 3 steps.
But at least 2 steps are required for zero downtime deployment.
In the above diagram, there are three points that TPS became 0 shortly. Those points are where controllers are deployed.
Except for those points, other components were being deployed one by one.

It's ready to merge.
No error happened during the deployment.

LGTM

So, can deploy several components at the same time like using old half solution?

Yes, I just deployed them one by one to minimize the impact of the deployment.
For example, if we deploy two schedulers at once, there is only one scheduler in my environment.
So all queues will be created in one scheduler. It's ok as I used moderate loads, but anyway, I wanted to avoid such a case.
And we can deploy multiple components at once as long as we reverse the order at the second deployment.

If we want to deployment in k8s env, has any change in openwhisk-deploy-kube repo?

When we deploy OW on K8S, we generally use blue/green deployment with a new helm release, so I think it would be ok.

Just have one question, otherwise LGTM

LGTM with a small question: https://github.com/apache/openwhisk/pull/5338#discussion_r1008972452

I would merge this tomorrow.
Please leave any comments.


Add FEATUREINFO and ROUTING to initial state

Pull Request Test Coverage Report for Build<PHONE_NUMBER>
Details

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 99.674%

Totals

Change from base Build<PHONE_NUMBER>:
0.0%

Covered Lines:
12444

Relevant Lines:
12444

💛  - Coveralls


HDDS-2035 Implement datanode level CLI to reveal pipeline relation.

What changes were proposed in this pull request?
#HDDS-2035 Implement datanode level CLI to reveal pipeline info
What is the link to the Apache JIRA
https://issues.apache.org/jira/browse/HDDS-2035
(Please create an issue in ASF JIRA before opening a pull request,
and you need to set the title of the pull request which starts with
the corresponding JIRA issue number. (e.g. HDDS-XXXX. Fix a typo in YYY.)
Please replace this section with the link to the Apache JIRA)
How was this patch tested?
bash-4.2$ ozone scmcli datanode list
Datanode: 7a68a668-3dbe-4366-9fed-271f221c1db0 (<IP_ADDRESS>/ozone_datanode_1.ozone_default).
Related pipelines:
cd060313-b724-46cf-a83a-8764ba066ae2/ONE/RATIS/OPEN
(Please explain how this patch was tested. Ex: unit tests, manual tests)
(If this patch involves UI changes, please attach a screen-shot; otherwise, remove this)

testCloseContainerEventWithRatis is fixed in https://github.com/apache/hadoop-ozone/pull/291

Command line filter doesn't take effect.
bash-4.2$ ozone scmcli datanode list --id=aaaa
Datanode: a37d1f73-7b4c-459a-a119-cd33c0fd64da (<IP_ADDRESS>/ozone_datanode_1.ozone_default/1 pipelines).
Related pipelines:
a1065d21-77a5-4265-80db-d341ac7c3da0/ONE/RATIS/OPEN/Leader

Stream.filter creates a new stream, which needs to be assigned to the existing stream to let the final forEach see the result of filtering.

@adoroszlai I have made the changes you requested.

Command line filter doesn't take effect.
bash-4.2$ ozone scmcli datanode list --id=aaaa
Datanode: a37d1f73-7b4c-459a-a119-cd33c0fd64da (<IP_ADDRESS>/ozone_datanode_1.ozone_default/1 pipelines).
Related pipelines:
a1065d21-77a5-4265-80db-d341ac7c3da0/ONE/RATIS/OPEN/Leader

bash-4.2$ ozone scmcli datanode list
Datanode: 63b02976-3fee-48dc-9f21-b42d7b6e4a40 (<IP_ADDRESS>/ozone_datanode_1.ozone_default/1 pipelines).
Related pipelines:
c8455063-62cc-4bb2-a63c-50a9d59a3adf/ONE/RATIS/ALLOCATED/Follower
bash-4.2$ ozone scmcli datanode list --ip <IP_ADDRESS>
Just updated.

Thanks @timmylicheng  for the contribution.  Committed to branch.


Distribution issue

Hi,
I was just wondering if any of you experienced issue receiving messages twice or missing some messages some times. I have each rmq message received and processed in a separate go routine and I added message numbering. I can see from the logs in rabbit and in my software that between reception and the handling of the message some strange behavior occur. I'll will dig further, but in any case, feel free to share your experience.

I managed to reproduce the issue, it's about the routing_key. I have 1 producer using two cony clients to send data in the same queue and exchange but with a different routing key. On the other side I have 2 separate subscribers receiving  the messages each with a different routing_key but same queue and exchange.
When only one client is connected he gets all the messages from routing_key 1 and 2. When both are connected, sometimes it works, each one receives its routed messages, but sometimes one receives the messages of the other one.
When I use the rabbit management interface, the queue is fine with all the messages with two different routing_key. I have to check my subscriber code but at first sight it looks fine.
Stay tuned...

Here's the consumer source code running in a dedicated go routine and pushing messages to a channel.
`logger.WithField("config", config).Debug("preparing new consummer")
// construct new client with the flag url
// and default backoff policy
cli := cony.NewClient(
cony.URL(config.URL),
cony.Backoff(DefaultBackoff),
)
// declarations
// the queue name will be supplied by the AMQP server
que := &cony.Queue{
	Name:       config.Queue,
	Durable:    config.Durable,
	AutoDelete: config.AutoDelete,
	Exclusive:  config.Exclusive,
}

exc := cony.Exchange{
	Name:       config.Exchange,
	Kind:       config.ExchangeType,
	AutoDelete: config.AutoDelete,
	Durable:    config.Durable,
}

bnd := cony.Binding{
	Queue:    que,
	Exchange: exc,
	Key:      config.RoutingKey,
}

cli.Declare([]cony.Declaration{
	cony.DeclareQueue(que),
	cony.DeclareExchange(exc),
	cony.DeclareBinding(bnd),
})

// prepare consumerOpt from config
options := make([]cony.ConsumerOpt, 0)
if config.AutoAck {
	options = append(options, cony.AutoAck())
}
if config.Exclusive {
	options = append(options, cony.Exclusive())
}
if config.NoLocal {
	options = append(options, cony.NoLocal())
}

// declare and register a consumer
cns := cony.NewConsumer(
	que,
	options...,
)
cli.Consume(cns)

logger.Debug("starting client loop to receive messages")
for cli.Loop() {
	select {
	case msg := <-cns.Deliveries():
		logger.WithField("delivery", msg).Debug("received message")
		config.Messages <- msg.Body
		// if needed auto ack messages
		if !config.AutoAck {
			err := msg.Ack(false)
			if err != nil {
				logger.WithField("msg", msg).WithField("error", err).Debug("fail to send ack on message")
			}
		}
	case err := <-cns.Errors():
		logger.WithField("error", err).Warn("consummer error")
	case err := <-cli.Errors():
		logger.WithField("error", err).Warn("client error")
	}

}
logger.Debug("exiting subscriber connection loop")`

@sebastienfr It seems that there is some misconception about how RabbitMQ works.
Consumers don't care about routing keys, routing keys only used during publishing, when new message arrives to exchange, exchange decide in which queue this message will go (based on routing key). Consuming single queue with 2 consumers means round-robin pattern of message distribution between consumers.

Hello,
Thank you for your reply, looks like I misunderstood the rmq tutorial, beacause I the binding consumer side is using the routing key, else why would it be needed. I'll check again the docs, thanks for your answer. https://www.rabbitmq.com/tutorials/tutorial-four-go.html

Hi,
I was working on existing code, as you suggested it was effectively wrong about the single queue and the key, it's fine now, I'm using 2 queues as you suggested it. It's quite amazing this was working 99% of the time. Thanks for your help.


Onboard Sarah to Pages team

Acceptance Criteria

[x] Share README
[x] Add to cloud-gov-team in Github cloud-gov org.
[x] Add to pages-ops in Github cloud-gov org.
[x] Add to #cg-pages- channels in Slack as needed, and add to @cg-pages-team Slack user group
[x] Add to daily standup, retro, and sprint planning
[x] Ensure user has cloud.gov Pages Github project access and brief on its use
[ ] Ensure user has GPG signing set up for GitHub: https://docs.google.com/document/d/11UDxvfkhncyLEs-NUCniw2u54j4uQBqsR2SBiLYPUZc/edit (Step 8 is automatically handled via https://github.com/cloud-gov/pages-gpg-keys)
[x] Add to Google Groups as needed
[ ] Add them as an agent to https://cloud-gov-new.zendesk.com/agent/
[ ] Add to search.usa.gov config
[x] Add to backups list as needed
[ ] Add new user as developer to the gsa-18f-federalist cloud.gov cloudfoundry organization
[ ] Have a cloud.gov operator add to the “pages.support" group in the cloud.gov UAA by using the make-pages-admin.sh script
[ ] Have a cloud.gov operator add to the “concourse.pages” team in the cloud.gov OpsUAA by using the make-pages-ops-admin.sh script so they can access Concourse CI
[ ] Add to AWS (Production GovCloud only)
[ ] Add to cloud.gov calendar

Authorization to onboard: https://groups.google.com/a/gsa.gov/g/cloud-gov-compliance/c/aF2vLibOUxE
See also #2725


Create control plane grafana dashboard

Create a grafana dashboard that displays the health of the control plane itself.  It should use the data gathered by #501.
This dashboard should be displayed or linked to somewhere in the Conduit dashboard UI.
It should show request volume, success rate, and latency for each control plane deployment:

controller
prometheus
web

Blocked on #501


TextField blinks when hoverColor == filledColor on displays with refresh rates higher than 60Hz

Steps to reproduce

Draw some TextField and add next params to decoration property:
decoration: InputDecoration(
fillColor: Colors.blue,
hoverColor: Colors.blue,
filled: true,
),
Run on 100hz display.
Hover mouse over TextField.

Expected results
TextField does not change background color when hovered and behaves simillary on different refresh rates.
Actual results
TextField changes background color on hover for 100hz display and behaves normally for 60hz.
Code sample
Code sample

import 'package:flutter/material.dart';

void main() {
  runApp(const MainApp());
}

class MainApp extends StatelessWidget {
  const MainApp({super.key});

  @override
  Widget build(BuildContext context) {
    return const MaterialApp(
      home: Scaffold(
        body: Center(
          child: TextField(
            decoration: InputDecoration(
              fillColor: Colors.blue,
              hoverColor: Colors.blue,
              filled: true,
            ),
          ),
        ),
      ),
    );
  }
}

Screenshots or Video

Screenshots / Video demonstration
https://github.com/user-attachments/assets/b8efc8e9-2fd6-451f-9a92-0ea9befb3397
https://github.com/user-attachments/assets/ab35ba06-3572-47da-b63a-317e287a029a

Logs
Logs

no logs messages

Flutter Doctor output
Doctor output

Doctor summary (to see all details, run flutter doctor -v):
[✓] Flutter (Channel stable, 3.24.3, on macOS 14.6.1 23G93 darwin-arm64, locale ru-BY)
[✓] Android toolchain - develop for Android devices (Android SDK version 34.0.0)
[✓] Xcode - develop for iOS and macOS (Xcode 15.4)
[✓] Chrome - develop for the web
[✓] Android Studio (version 2024.1)
[✓] VS Code (version 1.93.0)
[✓] Connected device (3 available)
    ! Error: Browsing on the local area network for iPhone Арина. Ensure the device is unlocked and attached with a cable or associated with the same local area network as this Mac.
      The device must be opted into Developer Mode to connect wirelessly. (code -27)
[✓] Network resources

• No issues found!

@leredirect Thanks for the report.
Is it only occuring on macOS desktop platform that has high refresh rate than 60 Hz ?
Can you also check if it occurs on latest iOS device or simulator if you have one ?
I tried on my macOS desktop which is old one and doesn't have refresh rate option so can't verify.

@leredirect Thanks for the report.
Is it only occuring on macOS desktop platform that has high refresh rate than 60 Hz ?
Can you also check if it occurs on latest iOS device or simulator if you have one ?
I tried on my macOS desktop which is old one and doesn't have refresh rate option so can't verify.

Hey hey! Yes, I ran this on macos with external display. So my macbook's screen has 60hz, and external display has 100hz. I can also launch it on both simulator and iPhone 14 pro with 120hz, but not sure how should I test hover effect on mobile. Anyway I'm ready to help :)

but not sure how should I test hover effect on mobile.

I think the same way you would do on desktop or web. This is just to confirm if the behavior is limited to macOS desktop only or on mobile as well. Please also try on web as well, because I see a similar issue reported for web only : https://github.com/flutter/flutter/issues/132373

@darshankawar reproduces on web as well:
100hz:
https://github.com/user-attachments/assets/d03001ff-ef08-4367-996c-f8fd0ed23670
60hz:
https://github.com/user-attachments/assets/b24ee923-820e-4eae-812c-aa2f498c857d
cant repeat on ios (i just hover over textfield with my finger), looks okay for iphone 14 pro 120hz and simulator on both 60hz and 100hz display.

Thanks for the update. We currently don't have 100 or 120 hz refresh rate machines to verify this. We tried on 60 wherein we couldn't replicate the reported behavior.
There's this open issue specific to web, but per OP this issue also replicates on web.
Keeping this issue open and labeling for team's tracking.

Hi guys I was having the same issue here for Flutter web after formatting the machine, my setup here is 2 monitors and a Laptop using Windows. After update all video drivers I noticed my laptop screen refresh rate was 165Hz and the monitors were 60Hz, I defaulted all (Latotop screen and Monitors) to 60Hz and the flicking issue went away. I don´t know if you have more then one screen but make sure your screens are all 60Hz because by reducing the refresh rate to 60Hz, you ensure that rendering and interactions will occur at a more predictable rate, which will likely resolve the flickering issue.
High refresh rates like 165Hz (in my case), Flutter can struggle to sync perfectly between frames, causing small inconsistencies that appear as flickering.
Hope it helps :)

I don't have a non-60hz monitor to reproduce this issue.
Can someone with such a monitor try with the following code sample (it could be a workaround):

import 'package:flutter/material.dart';

void main() {
  runApp(const MainApp());
}

class MainApp extends StatelessWidget {
  const MainApp({super.key});

  @override
  Widget build(BuildContext context) {
    return const MaterialApp(
      home: Scaffold(
        body: Center(
          child: TextField(
            decoration: InputDecoration(
              fillColor: WidgetStateColor.fromMap(
                <WidgetStatesConstraint, Color>{
                  // No need to separate hovered, it is for illustration.
                  WidgetState.hovered: Colors.blue,
                  WidgetState.any:     Colors.blue,
                },
              ),
              hoverColor: Colors.transparent,
              filled: true,
            ),
          ),
        ),
      ),
    );
  }
}


Run generate tests also through istioctl install and operator

This is a rewrite of an earlier attempt to run the same tests through all installation paths (istioctl generate/install and operator). By default, only generate is used since istioctl install and operator require kubebuilder to be installed for running the fake API server. If kubebuilder is available, all version of the command can be run by setting environment var KUBEBUILDER=1.

@ostromart: The following test failed, say /retest to rerun all failed tests:

Test name
Commit
Details
Rerun command

lint_istio
2b710d6c00d281b561f204c57bbd3917b8c96a16
link
/test lint_istio

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@ostromart: The following tests failed, say /retest to rerun all failed tests:

Test name
Commit
Details
Rerun command

lint_istio
2b710d6c00d281b561f204c57bbd3917b8c96a16
link
/test lint_istio

integ-security-k8s-tests_istio
2b710d6c00d281b561f204c57bbd3917b8c96a16
link
/test integ-security-k8s-tests_istio

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@ostromart: The following tests failed, say /retest to rerun all failed tests:

Test name
Commit
Details
Rerun command

integ-security-k8s-tests_istio
2b710d6c00d281b561f204c57bbd3917b8c96a16
link
/test integ-security-k8s-tests_istio

lint_istio
ef161c97588db5a2529b41a51d466378261c0e45
link
/test lint_istio

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@ostromart: The following tests failed, say /retest to rerun all failed tests:

Test name
Commit
Details
Rerun command

integ-security-k8s-tests_istio
2b710d6c00d281b561f204c57bbd3917b8c96a16
link
/test integ-security-k8s-tests_istio

lint_istio
ef161c97588db5a2529b41a51d466378261c0e45
link
/test lint_istio

gencheck_istio
ef161c97588db5a2529b41a51d466378261c0e45
link
/test gencheck_istio

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@ostromart: The following tests failed, say /retest to rerun all failed tests:

Test name
Commit
Details
Rerun command

integ-security-k8s-tests_istio
2b710d6c00d281b561f204c57bbd3917b8c96a16
link
/test integ-security-k8s-tests_istio

lint_istio
ef161c97588db5a2529b41a51d466378261c0e45
link
/test lint_istio

gencheck_istio
ef161c97588db5a2529b41a51d466378261c0e45
link
/test gencheck_istio

unit-tests_istio
ef161c97588db5a2529b41a51d466378261c0e45
link
/test unit-tests_istio

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@ostromart: The following tests failed, say /retest to rerun all failed tests:

Test name
Commit
Details
Rerun command

integ-security-k8s-tests_istio
2b710d6c00d281b561f204c57bbd3917b8c96a16
link
/test integ-security-k8s-tests_istio

gencheck_istio
ef161c97588db5a2529b41a51d466378261c0e45
link
/test gencheck_istio

unit-tests_istio
ef161c97588db5a2529b41a51d466378261c0e45
link
/test unit-tests_istio

lint_istio
42643031a261ef6e559c21c31d32957f4ca6900d
link
/test lint_istio

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@ostromart: The following tests failed, say /retest to rerun all failed tests:

Test name
Commit
Details
Rerun command

integ-security-k8s-tests_istio
2b710d6c00d281b561f204c57bbd3917b8c96a16
link
/test integ-security-k8s-tests_istio

unit-tests_istio
ef161c97588db5a2529b41a51d466378261c0e45
link
/test unit-tests_istio

lint_istio
42643031a261ef6e559c21c31d32957f4ca6900d
link
/test lint_istio

gencheck_istio
42643031a261ef6e559c21c31d32957f4ca6900d
link
/test gencheck_istio

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@ostromart: The following tests failed, say /retest to rerun all failed tests:

Test name
Commit
Details
Rerun command

integ-security-k8s-tests_istio
2b710d6c00d281b561f204c57bbd3917b8c96a16
link
/test integ-security-k8s-tests_istio

lint_istio
42643031a261ef6e559c21c31d32957f4ca6900d
link
/test lint_istio

gencheck_istio
42643031a261ef6e559c21c31d32957f4ca6900d
link
/test gencheck_istio

unit-tests_istio
42643031a261ef6e559c21c31d32957f4ca6900d
link
/test unit-tests_istio

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@ostromart: The following tests failed, say /retest to rerun all failed tests:

Test name
Commit
Details
Rerun command

gencheck_istio
42643031a261ef6e559c21c31d32957f4ca6900d
link
/test gencheck_istio

unit-tests_istio
42643031a261ef6e559c21c31d32957f4ca6900d
link
/test unit-tests_istio

lint_istio
7b19d4158929978402cc440300a8f5d3f0357539
link
/test lint_istio

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@ostromart: The following tests failed, say /retest to rerun all failed tests:

Test name
Commit
Details
Rerun command

unit-tests_istio
42643031a261ef6e559c21c31d32957f4ca6900d
link
/test unit-tests_istio

lint_istio
7b19d4158929978402cc440300a8f5d3f0357539
link
/test lint_istio

gencheck_istio
7b19d4158929978402cc440300a8f5d3f0357539
link
/test gencheck_istio

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@ostromart: The following tests failed, say /retest to rerun all failed tests:

Test name
Commit
Details
Rerun command

lint_istio
7b19d4158929978402cc440300a8f5d3f0357539
link
/test lint_istio

gencheck_istio
7b19d4158929978402cc440300a8f5d3f0357539
link
/test gencheck_istio

unit-tests_istio
7b19d4158929978402cc440300a8f5d3f0357539
link
/test unit-tests_istio

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@ostromart: The following tests failed, say /retest to rerun all failed tests:

Test name
Commit
Details
Rerun command

lint_istio
7b19d4158929978402cc440300a8f5d3f0357539
link
/test lint_istio

unit-tests_istio
7b19d4158929978402cc440300a8f5d3f0357539
link
/test unit-tests_istio

gencheck_istio
98ff94923885a9c3b7728cfac4696e185e449774
link
/test gencheck_istio

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@ostromart: The following tests failed, say /retest to rerun all failed tests:

Test name
Commit
Details
Rerun command

unit-tests_istio
7b19d4158929978402cc440300a8f5d3f0357539
link
/test unit-tests_istio

gencheck_istio
639ff47c07366420e559f7ac43f20f89c262fe5a
link
/test gencheck_istio

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@ostromart: The following tests failed, say /retest to rerun all failed tests:

Test name
Commit
Details
Rerun command

gencheck_istio
639ff47c07366420e559f7ac43f20f89c262fe5a
link
/test gencheck_istio

unit-tests_istio
639ff47c07366420e559f7ac43f20f89c262fe5a
link
/test unit-tests_istio

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

right, i need to create a separate PR to add kubebuilder to whatever will be running this test.

@ostromart: The following test failed, say /retest to rerun all failed tests:

Test name
Commit
Details
Rerun command

integ-mixer-k8s-tests_istio
2f83f830841452ec1490fb299127294dfd9e5ff9
link
/test integ-mixer-k8s-tests_istio

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

one remaining question, others lgtm

/retest

I don't think it's possible to create a controller-runtime fake client otherwise. We require it to be able to talk directly from the test client in the operator to a fake server. To use a fake kube test client we need to bring up the entire controller runtime in a pod which will really slow the tests down. I don't see another way to do it but maybe you have some ideas.

@ostromart: The following test failed, say /retest to rerun all failed tests:

Test name
Commit
Details
Rerun command

unit-tests_istio
18866bec23aa8059d6855e5fe876655080899209
link
/test unit-tests_istio

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@ostromart: PR needs rebase.

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository.

@ostromart: The following tests failed, say /retest to rerun all failed tests:

Test name
Commit
Details
Rerun command

unit-tests_istio
18866bec23aa8059d6855e5fe876655080899209
link
/test unit-tests_istio

integ-mixer-k8s-tests_istio
ed6ba21c76386c0ed156d2fdf74041399d9e4a0e
link
/test integ-mixer-k8s-tests_istio

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@ostromart: The following tests failed, say /retest to rerun all failed tests:

Test name
Commit
Details
Rerun command

integ-mixer-k8s-tests_istio
ed6ba21c76386c0ed156d2fdf74041399d9e4a0e
link
/test integ-mixer-k8s-tests_istio

unit-tests_istio
ed6ba21c76386c0ed156d2fdf74041399d9e4a0e
link
/test unit-tests_istio

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@ostromart: The following tests failed, say /retest to rerun all failed tests:

Test name
Commit
Details
Rerun command

integ-mixer-k8s-tests_istio
ed6ba21c76386c0ed156d2fdf74041399d9e4a0e
link
/test integ-mixer-k8s-tests_istio

unit-tests_istio
ed6ba21c76386c0ed156d2fdf74041399d9e4a0e
link
/test unit-tests_istio

gencheck_istio
ed6ba21c76386c0ed156d2fdf74041399d9e4a0e
link
/test gencheck_istio

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@ostromart: The following tests failed, say /retest to rerun all failed tests:

Test name
Commit
Details
Rerun command

integ-mixer-k8s-tests_istio
ed6ba21c76386c0ed156d2fdf74041399d9e4a0e
link
/test integ-mixer-k8s-tests_istio

unit-tests_istio
ed6ba21c76386c0ed156d2fdf74041399d9e4a0e
link
/test unit-tests_istio

gencheck_istio
ed6ba21c76386c0ed156d2fdf74041399d9e4a0e
link
/test gencheck_istio

integ-pilot-k8s-tests_istio
ed6ba21c76386c0ed156d2fdf74041399d9e4a0e
link
/test integ-pilot-k8s-tests_istio

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@ostromart: The following tests failed, say /retest to rerun all failed tests:

Test name
Commit
Details
Rerun command

integ-mixer-k8s-tests_istio
ed6ba21c76386c0ed156d2fdf74041399d9e4a0e
link
/test integ-mixer-k8s-tests_istio

unit-tests_istio
ed6ba21c76386c0ed156d2fdf74041399d9e4a0e
link
/test unit-tests_istio

gencheck_istio
ed6ba21c76386c0ed156d2fdf74041399d9e4a0e
link
/test gencheck_istio

integ-pilot-k8s-tests_istio
ed6ba21c76386c0ed156d2fdf74041399d9e4a0e
link
/test integ-pilot-k8s-tests_istio

integ-multicluster-k8s-tests_istio
ed6ba21c76386c0ed156d2fdf74041399d9e4a0e
link
/test integ-multicluster-k8s-tests_istio

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@ostromart: The following tests failed, say /retest to rerun all failed tests:

Test name
Commit
Details
Rerun command

integ-mixer-k8s-tests_istio
ed6ba21c76386c0ed156d2fdf74041399d9e4a0e
link
/test integ-mixer-k8s-tests_istio

unit-tests_istio
ed6ba21c76386c0ed156d2fdf74041399d9e4a0e
link
/test unit-tests_istio

gencheck_istio
ed6ba21c76386c0ed156d2fdf74041399d9e4a0e
link
/test gencheck_istio

integ-pilot-k8s-tests_istio
ed6ba21c76386c0ed156d2fdf74041399d9e4a0e
link
/test integ-pilot-k8s-tests_istio

integ-multicluster-k8s-tests_istio
ed6ba21c76386c0ed156d2fdf74041399d9e4a0e
link
/test integ-multicluster-k8s-tests_istio

integ-galley-k8s-tests_istio
ed6ba21c76386c0ed156d2fdf74041399d9e4a0e
link
/test integ-galley-k8s-tests_istio

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@ostromart: The following tests failed, say /retest to rerun all failed tests:

Test name
Commit
Details
Rerun command

integ-mixer-k8s-tests_istio
ed6ba21c76386c0ed156d2fdf74041399d9e4a0e
link
/test integ-mixer-k8s-tests_istio

unit-tests_istio
ed6ba21c76386c0ed156d2fdf74041399d9e4a0e
link
/test unit-tests_istio

gencheck_istio
ed6ba21c76386c0ed156d2fdf74041399d9e4a0e
link
/test gencheck_istio

integ-pilot-k8s-tests_istio
ed6ba21c76386c0ed156d2fdf74041399d9e4a0e
link
/test integ-pilot-k8s-tests_istio

integ-multicluster-k8s-tests_istio
ed6ba21c76386c0ed156d2fdf74041399d9e4a0e
link
/test integ-multicluster-k8s-tests_istio

integ-galley-k8s-tests_istio
ed6ba21c76386c0ed156d2fdf74041399d9e4a0e
link
/test integ-galley-k8s-tests_istio

integ-ipv6-k8s-tests_istio
ed6ba21c76386c0ed156d2fdf74041399d9e4a0e
link
/test integ-ipv6-k8s-tests_istio

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@ostromart: The following tests failed, say /retest to rerun all failed tests:

Test name
Commit
Details
Rerun command

integ-mixer-k8s-tests_istio
ed6ba21c76386c0ed156d2fdf74041399d9e4a0e
link
/test integ-mixer-k8s-tests_istio

unit-tests_istio
ed6ba21c76386c0ed156d2fdf74041399d9e4a0e
link
/test unit-tests_istio

gencheck_istio
ed6ba21c76386c0ed156d2fdf74041399d9e4a0e
link
/test gencheck_istio

integ-pilot-k8s-tests_istio
ed6ba21c76386c0ed156d2fdf74041399d9e4a0e
link
/test integ-pilot-k8s-tests_istio

integ-multicluster-k8s-tests_istio
ed6ba21c76386c0ed156d2fdf74041399d9e4a0e
link
/test integ-multicluster-k8s-tests_istio

integ-galley-k8s-tests_istio
ed6ba21c76386c0ed156d2fdf74041399d9e4a0e
link
/test integ-galley-k8s-tests_istio

integ-ipv6-k8s-tests_istio
ed6ba21c76386c0ed156d2fdf74041399d9e4a0e
link
/test integ-ipv6-k8s-tests_istio

lint_istio
ed6ba21c76386c0ed156d2fdf74041399d9e4a0e
link
/test lint_istio

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@ostromart: The following tests failed, say /retest to rerun all failed tests:

Test name
Commit
Details
Rerun command

integ-mixer-k8s-tests_istio
ed6ba21c76386c0ed156d2fdf74041399d9e4a0e
link
/test integ-mixer-k8s-tests_istio

unit-tests_istio
ed6ba21c76386c0ed156d2fdf74041399d9e4a0e
link
/test unit-tests_istio

gencheck_istio
ed6ba21c76386c0ed156d2fdf74041399d9e4a0e
link
/test gencheck_istio

integ-pilot-k8s-tests_istio
ed6ba21c76386c0ed156d2fdf74041399d9e4a0e
link
/test integ-pilot-k8s-tests_istio

integ-multicluster-k8s-tests_istio
ed6ba21c76386c0ed156d2fdf74041399d9e4a0e
link
/test integ-multicluster-k8s-tests_istio

integ-galley-k8s-tests_istio
ed6ba21c76386c0ed156d2fdf74041399d9e4a0e
link
/test integ-galley-k8s-tests_istio

integ-ipv6-k8s-tests_istio
ed6ba21c76386c0ed156d2fdf74041399d9e4a0e
link
/test integ-ipv6-k8s-tests_istio

lint_istio
ed6ba21c76386c0ed156d2fdf74041399d9e4a0e
link
/test lint_istio

integ-distroless-k8s-tests_istio
ed6ba21c76386c0ed156d2fdf74041399d9e4a0e
link
/test integ-distroless-k8s-tests_istio

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@ostromart: The following tests failed, say /retest to rerun all failed tests:

Test name
Commit
Details
Rerun command

integ-mixer-k8s-tests_istio
ed6ba21c76386c0ed156d2fdf74041399d9e4a0e
link
/test integ-mixer-k8s-tests_istio

unit-tests_istio
ed6ba21c76386c0ed156d2fdf74041399d9e4a0e
link
/test unit-tests_istio

gencheck_istio
ed6ba21c76386c0ed156d2fdf74041399d9e4a0e
link
/test gencheck_istio

integ-pilot-k8s-tests_istio
ed6ba21c76386c0ed156d2fdf74041399d9e4a0e
link
/test integ-pilot-k8s-tests_istio

integ-multicluster-k8s-tests_istio
ed6ba21c76386c0ed156d2fdf74041399d9e4a0e
link
/test integ-multicluster-k8s-tests_istio

integ-galley-k8s-tests_istio
ed6ba21c76386c0ed156d2fdf74041399d9e4a0e
link
/test integ-galley-k8s-tests_istio

integ-ipv6-k8s-tests_istio
ed6ba21c76386c0ed156d2fdf74041399d9e4a0e
link
/test integ-ipv6-k8s-tests_istio

lint_istio
ed6ba21c76386c0ed156d2fdf74041399d9e4a0e
link
/test lint_istio

integ-distroless-k8s-tests_istio
ed6ba21c76386c0ed156d2fdf74041399d9e4a0e
link
/test integ-distroless-k8s-tests_istio

integ-telemetry-k8s-tests_istio
ed6ba21c76386c0ed156d2fdf74041399d9e4a0e
link
/test integ-telemetry-k8s-tests_istio

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@ostromart: The following tests failed, say /retest to rerun all failed tests:

Test name
Commit
Details
Rerun command

integ-mixer-k8s-tests_istio
ed6ba21c76386c0ed156d2fdf74041399d9e4a0e
link
/test integ-mixer-k8s-tests_istio

unit-tests_istio
ed6ba21c76386c0ed156d2fdf74041399d9e4a0e
link
/test unit-tests_istio

gencheck_istio
ed6ba21c76386c0ed156d2fdf74041399d9e4a0e
link
/test gencheck_istio

integ-pilot-k8s-tests_istio
ed6ba21c76386c0ed156d2fdf74041399d9e4a0e
link
/test integ-pilot-k8s-tests_istio

integ-multicluster-k8s-tests_istio
ed6ba21c76386c0ed156d2fdf74041399d9e4a0e
link
/test integ-multicluster-k8s-tests_istio

integ-galley-k8s-tests_istio
ed6ba21c76386c0ed156d2fdf74041399d9e4a0e
link
/test integ-galley-k8s-tests_istio

integ-ipv6-k8s-tests_istio
ed6ba21c76386c0ed156d2fdf74041399d9e4a0e
link
/test integ-ipv6-k8s-tests_istio

lint_istio
ed6ba21c76386c0ed156d2fdf74041399d9e4a0e
link
/test lint_istio

integ-distroless-k8s-tests_istio
ed6ba21c76386c0ed156d2fdf74041399d9e4a0e
link
/test integ-distroless-k8s-tests_istio

integ-telemetry-k8s-tests_istio
ed6ba21c76386c0ed156d2fdf74041399d9e4a0e
link
/test integ-telemetry-k8s-tests_istio

release-test_istio
ed6ba21c76386c0ed156d2fdf74041399d9e4a0e
link
/test release-test_istio

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@ostromart: The following tests failed, say /retest to rerun all failed tests:

Test name
Commit
Details
Rerun command

integ-mixer-k8s-tests_istio
ed6ba21c76386c0ed156d2fdf74041399d9e4a0e
link
/test integ-mixer-k8s-tests_istio

unit-tests_istio
ed6ba21c76386c0ed156d2fdf74041399d9e4a0e
link
/test unit-tests_istio

gencheck_istio
ed6ba21c76386c0ed156d2fdf74041399d9e4a0e
link
/test gencheck_istio

integ-pilot-k8s-tests_istio
ed6ba21c76386c0ed156d2fdf74041399d9e4a0e
link
/test integ-pilot-k8s-tests_istio

integ-multicluster-k8s-tests_istio
ed6ba21c76386c0ed156d2fdf74041399d9e4a0e
link
/test integ-multicluster-k8s-tests_istio

integ-galley-k8s-tests_istio
ed6ba21c76386c0ed156d2fdf74041399d9e4a0e
link
/test integ-galley-k8s-tests_istio

integ-ipv6-k8s-tests_istio
ed6ba21c76386c0ed156d2fdf74041399d9e4a0e
link
/test integ-ipv6-k8s-tests_istio

lint_istio
ed6ba21c76386c0ed156d2fdf74041399d9e4a0e
link
/test lint_istio

integ-distroless-k8s-tests_istio
ed6ba21c76386c0ed156d2fdf74041399d9e4a0e
link
/test integ-distroless-k8s-tests_istio

integ-telemetry-k8s-tests_istio
ed6ba21c76386c0ed156d2fdf74041399d9e4a0e
link
/test integ-telemetry-k8s-tests_istio

release-test_istio
ed6ba21c76386c0ed156d2fdf74041399d9e4a0e
link
/test release-test_istio

integ-security-k8s-tests_istio
ed6ba21c76386c0ed156d2fdf74041399d9e4a0e
link
/test integ-security-k8s-tests_istio

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@ostromart: The following tests failed, say /retest to rerun all failed tests:

Test name
Commit
Details
Rerun command

integ-mixer-k8s-tests_istio
ed6ba21c76386c0ed156d2fdf74041399d9e4a0e
link
/test integ-mixer-k8s-tests_istio

unit-tests_istio
ed6ba21c76386c0ed156d2fdf74041399d9e4a0e
link
/test unit-tests_istio

gencheck_istio
ed6ba21c76386c0ed156d2fdf74041399d9e4a0e
link
/test gencheck_istio

integ-pilot-k8s-tests_istio
ed6ba21c76386c0ed156d2fdf74041399d9e4a0e
link
/test integ-pilot-k8s-tests_istio

integ-multicluster-k8s-tests_istio
ed6ba21c76386c0ed156d2fdf74041399d9e4a0e
link
/test integ-multicluster-k8s-tests_istio

integ-galley-k8s-tests_istio
ed6ba21c76386c0ed156d2fdf74041399d9e4a0e
link
/test integ-galley-k8s-tests_istio

integ-ipv6-k8s-tests_istio
ed6ba21c76386c0ed156d2fdf74041399d9e4a0e
link
/test integ-ipv6-k8s-tests_istio

lint_istio
ed6ba21c76386c0ed156d2fdf74041399d9e4a0e
link
/test lint_istio

integ-distroless-k8s-tests_istio
ed6ba21c76386c0ed156d2fdf74041399d9e4a0e
link
/test integ-distroless-k8s-tests_istio

integ-telemetry-k8s-tests_istio
ed6ba21c76386c0ed156d2fdf74041399d9e4a0e
link
/test integ-telemetry-k8s-tests_istio

release-test_istio
ed6ba21c76386c0ed156d2fdf74041399d9e4a0e
link
/test release-test_istio

integ-security-k8s-tests_istio
ed6ba21c76386c0ed156d2fdf74041399d9e4a0e
link
/test integ-security-k8s-tests_istio

integ-operator-controller-tests_istio
ed6ba21c76386c0ed156d2fdf74041399d9e4a0e
link
/test integ-operator-controller-tests_istio

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.


Add 'save_file' kwargs for GUROBI.

use Gurobi.write(save_file) to save the model file.
cplex and mosek have the similar functionality.

Description
Very simple changes.
Make it possible to write model using gurobi.
Type of change

[x] New feature (backwards compatible)
[ ] New feature (breaking API changes)
[ ] Bug fix
[ ] Other (Documentation, CI, ...)

Contribution checklist

[ ] Add our license to new files.
[ ] Check that your code adheres to our coding style.
[ ] Write unittests.
[ ] Run the unittests and check that they’re passing.
[ ] Run the benchmarks to make sure your change doesn’t introduce a regression.

 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.You have signed the CLA already but the status is still pending? Let us recheck it.

Thanks for adding this! Could you write a test as well? It's not so much to validate the code (which is very simple), as to commit us to maintaining this functionality.

A test is added

Thanks for adding the test! The CI is failing because of code style issues. Please follow these instructions: https://www.cvxpy.org/contributing/index.html#code-style
@rileyjmurray how should this test be integrated into the solver tests?

the code style has been changed
the gurobi_model.lp has been moved to /resources/ folder
BUT I got the error "ImportError: cannot import name 'InverseData' from partially initialized module 'cvxpy.reductions' (most likely due to a circular import) (g:\codes\python\cvxpy\cvxpy\reductions_init_.py)". I thought it is for the change of code style . I have no idea about whether it is an error only happens in my PC. Could you help me?

No worries, we'll take it from here.


Add support for building capsules

Consider this just a starting point to spur some discussion on how best to implement.

Should the capsules be included in the rootfs by default or simply be deployed to ${DEPLOYDIR}?  I initially went ahead and included them in the rootfs.  That follows the pattern of how swupdate works (which is what we use) in tegra-test-distro whereby tegra-bootloader-update and bl_update_payload are packaged into the rootfs and then swupdate mounts the just programmed inactive partition to drive the bootloader upddate.  Having said that, I believe when we implemented dm-verity to create a full chain of trust from the bootloaders to the rootfs it created a cycle of dependencies in the build.  To break the cycle we pulled the bootloader payload out of the rootfs and packaged it directly into the .swu.  For uefi the capsules eventually have to end up in /opt/nvidia/esp/EFI/UpdateCapsule/.  Maybe that means that the capsules should simply be deployed to the ${DEPLOYDIR} and it is up to the update mechanism to pull them out of the update specific packaging and copy them to the appropriate directory.

Is a new recipe really required?  I created a separate recipe instead of piling on top of tegra-bup-payload.  By doing so I needed to move some logic to a  .bbclass to avoid having to repeat it in the new recipe and creating a new point of maintenance.

Requesting a capsule update is obscure so I created and a helper script to set OSIndications.

I like choosing good names for things so if there are any suggestions to improved naming on anything I am open to suggestions.

Thanks @Lexmark-chad, this is a good start.

Should the capsules be included in the rootfs by default or simply be deployed to ${DEPLOYDIR}?

${DEPLOY_DIR_IMAGE} might be a better place when creating the capsules.  Something in the OTA updater is going to have to write the capsule into the /boot/efi/EFI/UpdateCapsule directory.  For Mender updates, that might be a post-install state script that copies the capsule file out of the rootfs, so we'd also need a recipe to install the capsule(s) into the rootfs for that case.  For swupdate, the capsule(s) could just be another payload in the .swu file, keeping it out of the rootfs, in which case the recipe could pull the capsule(s) directly from the deploy area, saving space in the rootfs.

Is a new recipe really required? I created a separate recipe instead of piling on top of tegra-bup-payload

Probably new recipes/bbclass/whatever for now.  At some point we might be able to combine the BUP and capsule generation logic, together, eliminating the .bup-payload artifacts altogether and just outputting capsules.  That should simplify things a bit, since the capsules won't combine the bootloader and kernel into a single payload.  That should allow us to move some of the logic into a bbclass or include file and have cleaner, separated, paths for the bootloader and the kernel capsule generation.  @kekiefer - what do you think?   Could we drop the old BUPs and associated tools and switch over to the capsule method in one step?

@madisongh , thanks for all the feedback.  I am close on the OsIndications rework and will hopefully get to that tomorrow.

@Lexmark-chad have you tried on jetson-xavier-nx-devkit-emmc yet or only on AGX Xavier?

I've tried it on both Orin & Xavier AGX.  I'll take a peek at the Xavier NX Devkit.

@dwalkes, I got the same result.  I'll have to get someone here rig me up a serial debug cable so I can see what is going on during boot.

This is exactly what happened before https://github.com/OE4T/meta-tegra/commit/64a3404aa2e7f2bb5735c99b6955fbb2c953441e but I see that is in the kirkstone branch.  I actually only tested it on master with https://matrix.to/#/!YBfWVpJwNVtkmqVCPS:gitter.im/$S8dzzJNfmhMzAt5cp4ikgNjJtez98R68O_39q3oAG0M?via=gitter.im&via=matrix.org&via=3dvisionlabs.com I believe.  I will try to re-test the NVIDIA built capsule update on kirkstone tonight.

I will try to re-test the NVIDIA built capsule update on kirkstone tonight.

I've verified I can successfully complete an update with this TEGRA_BL.Cap generated with the Jetpack 5.1.1 release and instructions here and the rest of the image matching the kirkstone build on this branch.  So it appears to be some difference in capsule content which causes the issue although I'm not sure what that would be.

When I used NVIDIA's tooling with the *.bl_only.bup-payload from the build it also didn't work.  Continuing to investigate...

I finally got a serial cable hooked up.  There wasn't anything that stood out as a hint of what is going on so I instrumented the tooling to output the exact command used to generate the bup payloads.  The main difference I saw was that L4T tooling uses nvdisp-init.bin for the cpu-bootloader partition while meta-tegra uses uefi_jetson.bin.  If I understand correctly that just means boot with or without a splash screen.  My next thought will be to try and enable debug in uefi so I get more serial trace output at boot.  @madisongh, can you think of anything else I should be looking at?

My next thought will be to try and enable debug in uefi so I get more serial trace output at boot.

I suggest EDK2_BUILD_MODE:pn-edk2-firmware-tegra = "DEBUG" , as well as turning on debug prints here

Just changing BUILD_MODE to DEBUG produced useful information:
Jetson UEFI firmware (version v35.3.1 built on 2023-01-24T13:18:32+00:00)
ESC   to enter Setup.
F11   to enter Boot Manager Menu.
Enter to continue boot.
FwPackageValidateImageInfo WARNING: image info for 'BCT' has version=13617, expected=0
FwPackageValidateImageInfo WARNING: image info for 'BCT' has version=13617, expected=0
FwPackageValidateImageInfo WARNING: image info for 'BCT' has version=13617, expected=0
FwPackageValidateImageInfo WARNING: image info for 'BCT' has version=13617, expected=0
FwPackageValidateImageInfo WARNING: image info for 'BCT' has version=13617, expected=0
FwPackageValidateImageInfo WARNING: image info for 'BCT_A' has version=13617, expected=0
FwPackageValidateImageInfo WARNING: image info for 'BCT_A' has version=13617, expected=0
FwPackageValidateImageInfo WARNING: image info for 'BCT_A' has version=13617, expected=0
FwPackageValidateImageInfo WARNING: image info for 'BCT_A' has version=13617, expected=0
FwPackageValidateImageInfo WARNING: image info for 'BCT_A' has version=13617, expected=0
FwPackageValidateImageInfo WARNING: image info for 'BCT_B' has version=13617, expected=0
FwPackageValidateImageInfo WARNING: image info for 'BCT_B' has version=13617, expected=0
FwPackageValidateImageInfo WARNING: image info for 'BCT_B' has version=13617, expected=0
FwPackageValidateImageInfo WARNING: image info for 'BCT_B' has version=13617, expected=0
FwPackageValidateImageInfo WARNING: image info for 'BCT_B' has version=13617, expected=0
FwPackageValidateImageInfo WARNING: image info for 'BCT-boot-chain_backup' has version=13617, expected=0
FwPackageValidateImageInfo WARNING: image info for 'BCT-boot-chain_backup' has version=13617, expected=0
FwPackageValidateImageInfo WARNING: image info for 'BCT-boot-chain_backup' has version=13617, expected=0
FwPackageValidateImageInfo WARNING: image info for 'BCT-boot-chain_backup' has version=13617, expected=0
FwPackageValidateImageInfo WARNING: image info for 'BCT-boot-chain_backup' has version=13617, expected=0
FwPackageValidateImageInfo WARNING: image info for 'mb1' has version=13617, expected=0
FwPackageValidateImageInfo WARNING: image info for 'mb1' has version=13617, expected=0
FwPackageValidateImageInfo WARNING: image info for 'mb1' has version=13617, expected=0
FwPackageValidateImageInfo WARNING: image info for 'mb1' has version=13617, expected=0
FwPackageValidateImageInfo WARNING: image info for 'mb1' has version=13617, expected=0
FwPackageValidateImageInfo WARNING: image info for 'mb1_b' has version=13617, expected=0
FwPackageValidateImageInfo WARNING: image info for 'mb1_b' has version=13617, expected=0
FwPackageValidateImageInfo WARNING: image info for 'mb1_b' has version=13617, expected=0
FwPackageValidateImageInfo WARNING: image info for 'mb1_b' has version=13617, expected=0
FwPackageValidateImageInfo WARNING: image info for 'mb1_b' has version=13617, expected=0
FwPackageValidateImageInfo WARNING: image info for 'MB1_BCT' has version=13617, expected=0
FwPackageValidateImageInfo WARNING: image info for 'MB1_BCT' has version=13617, expected=0
FwPackageValidateImageInfo WARNING: image info for 'MB1_BCT' has version=13617, expected=0
FwPackageValidateImageInfo WARNING: image info for 'MB1_BCT' has version=13617, expected=0
FwPackageValidateImageInfo WARNING: image info for 'MB1_BCT' has version=13617, expected=0
FwPackageValidateImageInfo WARNING: image info for 'MEM_BCT' has version=13617, expected=0
FwPackageValidateImageInfo WARNING: image info for 'MEM_BCT' has version=13617, expected=0
FwPackageValidateImageInfo WARNING: image info for 'MEM_BCT' has version=13617, expected=0
FwPackageValidateImageInfo WARNING: image info for 'MEM_BCT' has version=13617, expected=0
FwPackageValidateImageInfo WARNING: image info for 'MEM_BCT' has version=13617, expected=0
FwPackageValidateImageInfo WARNING: image info for 'spe-fw' has version=13617, expected=0
FwPackageValidateImageInfo WARNING: image info for 'mb2' has version=13617, expected=0
FwPackageValidateImageInfo WARNING: image info for 'mts-preboot' has version=13617, expected=0
FwPackageValidateImageInfo WARNING: image info for 'mts-mce' has version=13617, expected=0
FwPackageValidateImageInfo WARNING: image info for 'mts-proper' has version=13617, expected=0
FwPackageValidateImageInfo WARNING: image info for 'VER' has version=13617, expected=0
FwPackageValidateImageInfo WARNING: image info for 'VER' has version=13617, expected=0
FwPackageValidateImageInfo WARNING: image info for 'VER' has version=13617, expected=0
FwPackageValidateImageInfo WARNING: image info for 'VER' has version=13617, expected=0
FwPackageValidateImageInfo WARNING: image info for 'VER' has version=13617, expected=0
FwPackageValidateImageInfo WARNING: image info for 'cpu-bootloader' has version=13617, expected=0
FwPackageValidateImageInfo WARNING: image info for 'bootloader-dtb' has version=13617, expected=0
FwPackageValidateImageInfo WARNING: image info for 'bootloader-dtb' has version=13617, expected=0
FwPackageValidateImageInfo WARNING: image info for 'bootloader-dtb' has version=13617, expected=0
FwPackageValidateImageInfo WARNING: image info for 'bootloader-dtb' has version=13617, expected=0
FwPackageValidateImageInfo WARNING: image info for 'bootloader-dtb' has version=13617, expected=0
FwPackageValidateImageInfo WARNING: image info for 'secure-os' has version=13617, expected=0
FwPackageValidateImageInfo WARNING: image info for 'eks' has version=13617, expected=0
FwPackageValidateImageInfo WARNING: image info for 'bpmp-fw' has version=13617, expected=0
FwPackageValidateImageInfo WARNING: image info for 'bpmp-fw-dtb' has version=13617, expected=0
FwPackageValidateImageInfo WARNING: image info for 'bpmp-fw-dtb' has version=13617, expected=0
FwPackageValidateImageInfo WARNING: image info for 'bpmp-fw-dtb' has version=13617, expected=0
FwPackageValidateImageInfo WARNING: image info for 'bpmp-fw-dtb' has version=13617, expected=0
FwPackageValidateImageInfo WARNING: image info for 'bpmp-fw-dtb' has version=13617, expected=0
FwPackageValidateImageInfo WARNING: image info for 'rce-fw' has version=13617, expected=0
FwPackageValidateImageInfo WARNING: image info for 'adsp-fw' has version=13617, expected=0
FwPackageValidateImageInfo WARNING: image info for 'sc7' has version=13617, expected=0
FwPackageValidateImageInfo WARNING: image info for 'xusb-fw' has version=13617, expected=0
FwPackageValidateImageInfo WARNING: image info for 'secondary_gpt' has version=13617, expected=0
FwPackageValidateImageInfo WARNING: image info for 'secondary_gpt' has version=13617, expected=0
FwPackageValidateImageInfo WARNING: image info for 'secondary_gpt' has version=13617, expected=0
FwPackageValidateImageInfo WARNING: image info for 'secondary_gpt' has version=13617, expected=0
FwPackageValidateImageInfo WARNING: image info for 'secondary_gpt' has version=13617, expected=0
FwPackageValidateImageInfo WARNING: image info for 'secondary_gpt_backup' has version=13617, expected=0
FwPackageValidateImageInfo WARNING: image info for 'secondary_gpt_backup' has version=13617, expected=0
FwPackageValidateImageInfo WARNING: image info for 'secondary_gpt_backup' has version=13617, expected=0
FwPackageValidateImageInfo WARNING: image info for 'secondary_gpt_backup' has version=13617, expected=0
FwPackageValidateImageInfo WARNING: image info for 'secondary_gpt_backup' has version=13617, expected=0
bootloader-dtb not found in package: Unsupported
FmpDxe(NVIDIA System Firmware): CheckTheImage() - FmpDeviceLib CheckImage failed. Status = Aborted
FmpDxe(NVIDIA System Firmware): SetTheImage() - Check The Image failed with Aborted.
HandleCapsules˙�ˇ‚

I'm getting closer.  The tnspecs are different between meta-tegra builds and l4t tooling which causes the code in FwPackageGetImageIndex to flow through differently.  I've added debug all throughout that function and it is clearly following a different code path.  The tnspecs for bootloader-dtb for meta-tegra are:
3668-100-0001--1-2-jetson-xavier-nx-devkit-emmc-
3668-200-0001--1-2-jetson-xavier-nx-devkit-emmc-
3668-300-0001--1-2-jetson-xavier-nx-devkit-emmc-
3668-301-0001--1-2-jetson-xavier-nx-devkit-emmc-
3668-301-0003--1-2-jetson-xavier-nx-devkit-emmc-

while l4t's is:
3668-100-0001--1-2-jetson-xavier-nx-devkit-emmc-
3668-301-0001--1-2-jetson-xavier-nx-devkit-emmc-

It's the 3668-200-0001--1-2-jetson-xavier-nx-devkit-emmc- spec which causes the code to flow differently based on the call to FwPackageGetImageIndex with these parameters:
FwPackageGetImageIndex:  Name: bootloader-dtb, FullSpec: 3668-200-0001-G.0-1-2-jetson-xavier-nx-devkit-emmc-, CompatSpec: 3668-100---1--jetson-xavier-nx-devkit-emmc-
Looking at that code now to understand design intent.

While it was true that the 3668-200-0001--1-2-jetson-xavier-nx-devkit-emmc- spec caused it to flow through a different code path and eventually return EFI_UNSUPPORTED the problem had already occurred when 3668-100-0001--1-2-jetson-xavier-nx-devkit-emmc- didn't match the compat spec and kick it out of the loop.  I made a small change which appears to have fixed the problem, but I think it's better to actually refactor that code a bit as I found it confusing and hard to follow given what they were trying to accomplish.  I'll give that a shot and we can patch it in meta-tegra while we wait for it to be upstreamed.  Any opinions on whether the patch should be added to this PR and have it all go together?

Hmm.  The TEGRA_BUPGEN_SPECS setting for jetson-xavier-nx-devkit-emmc is incorrect.  I must have missed that when converting us over to using the compatibility specs.  We should be building just the -100 and -301 entries, just like L4T does.

the problem had already occurred when 3668-100-0001--1-2-jetson-xavier-nx-devkit-emmc- didn't match the compat spec and kick it out of the loop

Are we setting up the compat spec wrong for the Xavier NXes, too?

Are we setting up the compat spec wrong for the Xavier NXes, too?

That looks correct:
https://github.com/OE4T/meta-tegra/blob/kirkstone/conf/machine/jetson-xavier-nx-devkit.conf#L7

I mean in this function: https://github.com/OE4T/meta-tegra/blob/3c429b60115600ddf3adaa7be28d6c2c0bfa1019/recipes-bsp/tools/setup-nv-boot-control/setup-nv-boot-control.sh.in#L61-L69

I modified TEGRA_BUPGEN_SPECS for the jetson-xavier-nx-devkit-emmc machine conf to match the l4t entries per your observation and it still failed.  I'll re-check everything tomorrow to see if I messed up something.  Also, per prior post:
root@jetson-xavier-nx-devkit-emmc:~# efivar --print --name 781e084c-a330-417c-b678-38e696380cb9-TegraPlatformCompatSpec
GUID: 781e084c-a330-417c-b678-38e696380cb9
Name: "TegraPlatformCompatSpec"
Attributes:
        Non-Volatile
        Boot Service Access
        Runtime Service Access
Value:
00000000  33 36 36 38 2d 31 30 30  2d 2d 2d 31 2d 2d 6a 65  |3668-100---1--je|
00000010  74 73 6f 6e 2d 78 61 76  69 65 72 2d 6e 78 2d 64  |tson-xavier-nx-d|
00000020  65 76 6b 69 74 2d 65 6d  6d 63 2d                 |evkit-emmc-     |

False alarm.  Not everything rebuilt after I changed the machine conf to make TEGRA_BUPGEN_SPECS match L4T's list.  Once rebuilt everything worked as expected.  I will soon add that change to the PR.  I'll log an issue against edk2-nvidia as there is clearly a logic bug that will eventually get exposed.

Thanks @Lexmark-chad , kicked off a build, will retry in the morning.

Confirmed working on jetson-xavier-nx-devkit-emmc.  Thanks again @Lexmark-chad !

Issue logged.


No Apple Swift Build package ?

What did you do?
I want to run swiftyjson from terminal using Marathon
to use alamofire I can simply type
marathon add https://github.com/Alamofire/Alamofire.git

marathon add https://github.com/SwiftyJSON/SwiftyJSON.git  -
Marathon is looking for swift build packages -
Please replace this with what you did.
What did you expect to happen?
this project should provide a native swift build package.

https://github.com/apple/swift-package-manager

➜  ~ marathon add https://github.com/SwiftyJSON/SwiftyJSON.git
💥  Could not resolve the latest version for package at 'https://github.com/SwiftyJSON/SwiftyJSON.git'
👉  Make sure that the package you're trying to add is reachable, and has at least one tagged release


straight-mock-repo.el shows as a broken symlink in my local repo

https://github.com/radian-software/straight.el/blob/9b11112b2e7aedd994feb2d8f95bd66dbc5749a5/tests/mocks/.emacs.d/straight/build/straight-mock-repo/straight-mock-repo.el#L1

Is this causing a test to fail, or any sort of breakage?

No, not that I'm aware of at least. I  only discovered it because the chkstow tool that is part of stow (which I use to manage my dotfiles) reported it as a bogus link. Feel free to close if you believe this is a non-issue.

Thanks for reporting, but I don't think this is harming anything.

It's a little odd that it has an absolute path hardcoded for your personal computer, though. That hardcoding makes me worry that maybe a test will pass on your machine but not anywhere else. I filed https://github.com/radian-software/straight.el/pull/1124 to change this to a relative link, so at least it will be equally inconvenient for everybody. Long term, it might make sense to have straight.el always use relative symlinks, since that would make the straight directory relocatable.

It's a little odd that it has an absolute path hardcoded for your personal computer, though.

Fair point. I agree it could be a relative link.

Long term, it might make sense to have straight.el always use relative symlinks, since that would make the straight directory relocatable.

Good idea. I've run into problems with links breaking when moving test environments into storage to keep for later.


For black color, few xaml files missing in source code?

It seems like following files are missing from source code related to black color
MaterialDesignColor.Black.Accent.xaml
MaterialDesignColor.Blue.Named.Accent.xaml
Can you pls check n revert back?

Hi @krunalc Black isn't an actual colour/paletter; it shouldn't be, I need to remove it.
All the "proper" palettes are setup according to Google's specifications: https://www.google.com/design/spec/style/color.html#

all Black .xaml files now removed.


OpenSuSE leap 15.4 on WSL2 will not start after enabling systemd

Version
Windows version: 10.0.22621.1105
WSL Version

[x] WSL 2
[ ] WSL 1

Kernel Version
<IP_ADDRESS>
Distro Version
openSUSE-Leap-15.4
Other Software
No response
Repro Steps
I followed the instructions to have systemd start on boot from: this link . In particular I set this variable in the /etc/wsl.conf file in my distro:
[boot]
systemd=true

Expected Behavior
The distro "boots"  when I start WSL
Actual Behavior
This error is thrown and no console starts:
Error code: Wsl/Service/CreateInstance/E_UNEXPECTED
Diagnostic Logs
Using this script I created this diagnostic log file.
WslLogs-2023-02-06_13-47-49.zip

This ticket was created since #9477 has been marked closed by inactivity from the reporter.

Unfortunately there's a piece of the systemd puzzle missing by default in Leap. You need a symlink for /sbin/init pointing to /usr/lib/systemd/systemd ([as root, run] ln -s /usr/lib/systemd/systemd /sbin/init) ; once that's in place it will work.
I've added this logic to a wsl_systemd pattern (package: patterns-wsl-systemd) but it hasn't proliferated everywhere in the ecosystem, especially backwards (15.4, 15.3, etc.); hopefully >=15.5 will have it available out of the gate.

I tried a new opensuse install, this time tumbleweed, and I did install the wsl_systemd pattern. It works fine.
Now, how do I recover the "lost" wsl instance? I would like to save a few files that are "stuck" in it. I'd like to mount that disk to disable systemd on start or at least copy files out of it. Anything that you could recommend, besides from wiping that disk?

Leaving this here for anyone having the same problem as I did. This is how you fix a botched Leap distribution using a different wsl distribution, in my case tumbleweed.

Find out where the vhdx (virtual hdd) is located in the filesystem. Run this one liner in powershell:

(Get-ChildItem -Path HKCU:\Software\Microsoft\Windows\CurrentVersion\Lxss | Where-Object { $_.GetValue("DistributionName") -eq 'openSUSE-Leap-15.4' }).GetValue("BasePath") + "\ext4.vhdx"

This will give you a long string as an answer. In my case it was this, but yours will surely look different
C:\Users\<your windows username>\AppData\Local\Packages\46932SUSE.openSUSELeap15.4_022rs5jcyhyac\LocalState\ext4.vhdx

Now exit all wsl windows and in a powershell terminal type wsl --shutdown.
Verify that all wsl instances have been shutdown with wsl -l -v
Start your alternative wsl distribution (tumbleweed in my case)
In a powershell terminal mount the vhdx to your alternative distribution, using the long string you got in 1.:

 wsl -d openSUSE-Tumbleweed --mount --vhd C:\Users\<your windows username>\AppData\Local\Packages\46932SUSE.openSUSELeap15.4_022rs5jcyhyac\LocalState\ext4.vhdx

The previous command will tell you on success that the disk has been mounted on /mnt/wsl/XX, in my case it was:

Time to fix your wsl.conf file! In your alternative (tumbleweed) wsl terminal open this file using sudo:

 sudo vim /mnt/wsl/CYourWindowsUserNameAppDataLocalPackages46932SUSEopenSUSELeap154022rs5jcyhyacLocalStateext4vhdx/etc/wsl.conf

Remove the offending lines from wsl.conf and save it:

[boot]
systemd=true

Close your alternative wsl (tumbleweed) instance. Call wsl --shutdown in the powershell terminal
Start your Leap wsl distribution.
Now try to install the wsl_systemd pattern in Leap, before you enable systemd again!

Unfortunately there's a piece of the systemd puzzle missing by default in Leap. You need a symlink for /sbin/init pointing to /usr/lib/systemd/systemd ([as root, run] ln -s /usr/lib/systemd/systemd /sbin/init) ; once that's in place it will work.
I've added this logic to a wsl_systemd pattern (package: patterns-wsl-systemd) but it hasn't proliferated everywhere in the ecosystem, especially backwards (15.4, 15.3, etc.); hopefully >=15.5 will have it available out of the gate.

Thanks for this fix. For some reason still had to do this with openSUSE-Leap-15.5 to get systemd working.
PS C:\Windows\system32> wsl --version
WSL version: <IP_ADDRESS>
Kernel version: <IP_ADDRESS>-1
WSLg version: 1.0.59
MSRDC version: 1.2.4677
Direct3D version: 1.611.1-81528511
DXCore version: 10.0.25131.1002-220531-1700.rs-onecore-base2-hyp
Windows version: 10.0.19045.3803

for reference.

Unfortunately there's a piece of the systemd puzzle missing by default in Leap. You need a symlink for /sbin/init pointing to /usr/lib/systemd/systemd ([as root, run] ln -s /usr/lib/systemd/systemd /sbin/init) ; once that's in place it will work.
I've added this logic to a wsl_systemd pattern (package: patterns-wsl-systemd) but it hasn't proliferated everywhere in the ecosystem, especially backwards (15.4, 15.3, etc.); hopefully >=15.5 will have it available out of the gate.

Thanks for this fix. For some reason still had to do this with openSUSE-Leap-15.5 to get systemd working.
PS C:\Windows\system32> wsl --version
WSL version: <IP_ADDRESS>
Kernel version: <IP_ADDRESS>-1
WSLg version: 1.0.59
MSRDC version: 1.2.4677
Direct3D version: 1.611.1-81528511
DXCore version: 10.0.25131.1002-220531-1700.rs-onecore-base2-hyp
Windows version: 10.0.19045.3803

for reference.

When I said "hopefully >=15.5 will have it available out of the gate." I was referring to the wsl_systemd pattern being available for use, not backend systemd changes to Leap on the whole. I'm not planning on enabling systemd "out of the gate" for any of the SUSE/openSUSE images.
The idea would be zypper in -t pattern wsl_systemd is run very early after a distro is installed if an individual wants systemd "out of the gate".

I have the same issue, after follow instruction from this doc: https://en.opensuse.org/openSUSE:WSL, install wsl_gui, wsl_systemd, wsl_base & shutdown WSL, start again. Finally my SUSE can use systemd

hi guys, anyone can share more detail? I mounted the vhdx in windows 10. And what's the next? I try to enter the wsl and fix the config file but no works. Sorry I am totally a green hand.
`PS C:\Windows\system32> wsl -d Ubuntu-20.04 --mount "C:\Users\Public\Documents\Hyper-V\Virtual hard disks\Centos.vhdx" --vhd  --partition 1
The disk was successfully mounted as '/mnt/wsl/CUsersPublicDocumentsHyperVVirtualharddisksCentosvhdxp1'.
Note: The location will be different if you have modified the automount.root setting in /etc/wsl.conf.
To unmount and detach the disk, run 'wsl.exe --unmount \?\C:\Users\Public\Documents\Hyper-V\Virtual hard disks\Centos.vhdx'.
PS C:\Windows\system32> cd /mnt/wsl
cd : Cannot find path 'C:\mnt\wsl' because it does not exist.
At line:1 char:1

cd /mnt/wsl

  + CategoryInfo          : ObjectNotFound: (C:\mnt\wsl:String) [Set-Location], ItemNotFoundException
  + FullyQualifiedErrorId : PathNotFound,Microsoft.PowerShell.Commands.SetLocationCommand

PS C:\Windows\system32> wsl
Catastrophic failure
Error code: Wsl/Service/CreateInstance/E_UNEXPECTED`

hi guys, anyone can share more detail? I mounted the vhdx in windows 10. And what's the next? I try to enter the wsl and fix the config file but no works. Sorry I am totally a green hand.
`PS C:\Windows\system32> wsl -d Ubuntu-20.04 --mount "C:\Users\Public\Documents\Hyper-V\Virtual hard disks\Centos.vhdx" --vhd  --partition 1
The disk was successfully mounted as '/mnt/wsl/CUsersPublicDocumentsHyperVVirtualharddisksCentosvhdxp1'.
Note: The location will be different if you have modified the automount.root setting in /etc/wsl.conf.
To unmount and detach the disk, run 'wsl.exe --unmount \?\C:\Users\Public\Documents\Hyper-V\Virtual hard disks\Centos.vhdx'.
PS C:\Windows\system32> cd /mnt/wsl
cd : Cannot find path 'C:\mnt\wsl' because it does not exist.
At line:1 char:1

cd /mnt/wsl

  + CategoryInfo          : ObjectNotFound: (C:\mnt\wsl:String) [Set-Location], ItemNotFoundException
  + FullyQualifiedErrorId : PathNotFound,Microsoft.PowerShell.Commands.SetLocationCommand

PS C:\Windows\system32> wsl
Catastrophic failure
Error code: Wsl/Service/CreateInstance/E_UNEXPECTED`