[question] Image vs Path origin inconsistency

Hi again,
While I've been integrating the new coordinate system changes to our codebase to drop our Y-axis recalculation code, I've noticed that some render components handle the rendering origin differently and thus cause some inconsistencies within our code.
We use CartesianIV coordinate system now.
One such case is when we render rectangles, we call dc.DrawPath(n.X, n.height+n.Y, canvasPath) and have to offset the Y axis by the rectangle's height to ensure the anchor is set at the bottom-left of the node.
Meanwhile, images handle such situations and recalculate the origin based on the coordinate system used. As seen here:
func (c *Context) DrawImage(x, y float64, img image.Image, resolution Resolution) {
	if img.Bounds().Size().Eq(image.Point{}) {
		return
	}

	coord := c.coord(x, y)
	m := Identity.Translate(coord.X, coord.Y).Mul(c.view).Scale(1.0/resolution.DPMM(), 1.0/resolution.DPMM())
	if c.coordSystem == CartesianIII || c.coordSystem == CartesianIV {
		m = m.Translate(0.0, -float64(img.Bounds().Size().Y))
	}
	if c.coordSystem == CartesianII || c.coordSystem == CartesianIII {
		m = m.Translate(-float64(img.Bounds().Size().X), 0.0)
	}
	c.RenderImage(img, m)
}

Is there a specific reason for why only some render components recalculate the position? Could it be improved on the canvas side potentially?
Thank you.

Good point, it's however not very straightforward to fix this, and I'd be happy for some input!
Text boxes are always anchored top-left, and text lines are always anchored on the baseline. Images are anchored to the corner closest to the origin, that is bottom-left for CartesianI and top-left for CartesianIV. For paths there is a fixed starting point (the first MoveTo) and we don't change anything based on the coordinate system.
What I can do to fix this, is to flip the vertical axis of the path for CartesianIV (i.e. ReflectY) which actually works quite well if we compare it to SVG paths. SVG paths are in CartesianIV, and when copying the path command-for-command you'd need to flip the Y axis in canvas for it to display correctly. Now if we were to flip the Y axis for paths in the CartesianIV coordinate system, this would fix this incosistency and make it a bit more intuitive for CartesianIV users (perhaps the majority).

I've pushed the proposal above, this actually works well when together with ParseSVG.

Thank you, I will test it out and let you know how things work!

Hi again, rendering works fine on our end, it is much easier for us to render certain elements, thank you again for your help! If there's any info I can provide related to this issue let me know.


Adding source_url and issues_url

Just adding these so the supermarket shows up the link to the cookbook code.

Hi @mansona
Thanks for the PR.  If you wouldn't mind fixing the travis errors, I would be happy to merge it.

done :+1:

@mansona, thanks!


[AIRFLOW-1273] Add Google Cloud ML version and model operators

JIRA

[ https://issues.apache.org/jira/browse/AIRFLOW-1273]

Description
Includes the following changes:

gcp_cloudml_hooks.py to work Google Cloud ML engine Rest APIs for model and versions (docs:
https://cloud.google.com/ml-engine/reference/rest/)
cloudml_operator.py which contains CloudMLVersionOperator and CloudMLModelOperators
unit tests for the added hooks.
Adding a default value for google_cloud_default connection.

Tests

Added unit tests for all added methods in gcp_cloudml_hooks.py.
[Link to Travis:
https://travis-ci.org/N3da/incubator-airflow/builds/244668457]

Codecov Report

Merging #2379 into master will increase coverage by 0.02%.
The diff coverage is 100%.

@@            Coverage Diff             @@
##           master    #2379      +/-   ##
==========================================
+ Coverage   69.22%   69.25%   +0.02%
==========================================
  Files         145      145
  Lines       11134    11135       +1
==========================================
+ Hits         7707     7711       +4
+ Misses       3427     3424       -3

Impacted Files
Coverage Δ

airflow/utils/db.py
84.42% <100%> (+0.12%)
:arrow_up:

airflow/models.py
87.23% <0%> (+0.14%)
:arrow_up:

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update fb21bcb...1544881. Read the comment docs.

LGTM merged!


Swagger UI 3

I updated Swagger UI to 3.13.1 as well as OpenApi documentation format. How better to merge it here? As it's complex update I am not sure how better to do it.

This repository has been closed and moved to laminas-api-tools/api-tools-documentation-swagger; a new issue has been opened at https://github.com/laminas-api-tools/api-tools-documentation-swagger/issues/6.


Running on local URL:  http://<IP_ADDRESS>:7860  To create a public link, set share=True in launch().

Please tell me where to modify the share parameter in lauch()

For gradio usage, please refer to the doc or propose issues in their repo to serve your purpose. If you have any questions about our code, please be specific.

Thanks, revised done


Long-running Chrome instance

Like LibreOffice, it could be interesting to have this behavior performance wise with some restart mechanism to avoid memory leaks.

I noticed that after couple of days of not using the instance on Google Cloud Run usually the first call returns 503 Service Unavailable error.
What I found in logs I paste below:

Closing this as it has been implmented.


Support CLOCK_MONOTONIC in clock_gettime

From discussion starting at https://github.com/Meziu/rust-horizon/issues/6#issuecomment-1026109044

Looking at the implementation of osGetTime (which is used by gettimeofday, which in turn is used by our clock_gettime impl for CLOCK_REALTIME), they appear to do some adjustment for clock drift in an attempt to get monotonic values, but I'm not sure if that implies the value from svcGetSystemTick() is not normally monotonic? There is also an epoch adjustment from 1900 to 1970 here for gettimeofday, but I don't think that would be strictly needed for a monotonic clock_gettime...
So maybe we could try our own impl that basically looks like this?
let now = svcGetSystemTick();
// Not sure if the math is quite right but you get the idea...
(*tp).tv_sec = now / SYSCLOCK_ARM11;
(*tp).tv_nsec = 1000 * (now - SYSCLOCK_ARM11*(*tp).tv_sec) / CPU_TICKS_PER_USEC;

I have to imagine that svcGetSystemTick() is monotonic, since I think it's supposed to be the number of clock cycles since boot, based on this docstring
Originally posted by @ian-h-chamberlain in https://github.com/Meziu/rust-horizon/issues/6#issuecomment-1026196436

I can work on this soon but wanted to track it here, also wanted to wait for the discussion in https://github.com/Meziu/rust-linker-fix-3ds/pull/8 to be finalized so we can come up with a best practice for exposing libctru APIs through libc like this, since the error handling will probably be similar.

I just ran into this when trying to write a Tokio example. It needs monotonic time for its "time" feature.


Mac build missing aliases

it was a little tricky to get this built from scratch on macOS.
I was missing some aliases needed by build.py.
What I ended up doing:
#!/bin/bash
venv_dir=python3-venv
py_bin_dir=$venv_dir/bin
. $py_bin_dir/activate

# initialize venv
python3 -m venv $venv_dir
python -m pip install --upgrade pip
python -m pip install wheel
python -m pip install -r requirements.txt

# Aliases needed by build.py
ln -s pyside6-rcc $by_bin_dir/rcc
ln -s pyside6-uic $py_bin_dir/uic
ln -s python3 $py_bin_dir/py

py build.py

Maybe there's some missing conventional magic to get these pyside6- programs into path. I don't use pyside or Qt so I don't know. But I just symlinked them and got an exe built.

NM. was using old branch.


segment written error: invalid argument - endless loop?

Hey,
At some point the programm bahaves strange (I can't explain it from the log) and ends in an endless loop with the "segment written error: invalid argument". Then, at some point, the programm crashes without an error (maybe because of the heavy output, my log file has around 470M lines  because of the endless loop). I saw this behaviour the first time, maybe it's related to the fix for #66. Here's a slightly adjusted log where the problem appears (I deleted the "channel offline" messages from other channels for better reading).
[2024-08-22 03:22:51] [INFO] [xxx/] segment #4482 written
[2024-08-22 03:22:51] [INFO] [xxx/] segment #4483 written
[2024-08-22 03:22:51] [INFO] [xxx/] segment #4484 written
[2024-08-22 03:22:53] [ERROR] [xxx/] segment #4672 request error, ignored: received status code 404
[2024-08-22 03:22:59] [ERROR] [xxx/] segment #4675 request error, ignored: received status code 404
[2024-08-22 03:23:12] [WARN] [xxx/] segment #4485 not found in buffer, skipped
[2024-08-22 03:23:12] [INFO] [xxx/] segment #4486 written
[2024-08-22 03:23:12] [INFO] [xxx/] segment #4487 written
[2024-08-22 03:23:12] [WARN] [xxx/] segment #4488 not found in buffer, skipped
[2024-08-22 03:23:12] [INFO] [xxx/] segment #4489 written
[2024-08-22 03:23:12] [INFO] [xxx/] segment #4490 written
[2024-08-22 03:23:33] [WARN] [xxx/] segment #4491 not found in buffer, skipped
[2024-08-22 03:23:33] [INFO] [xxx/] segment #4492 written
[2024-08-22 03:23:33] [INFO] [xxx/] segment #4493 written
[2024-08-22 03:23:33] [WARN] [xxx/] segment #4494 not found in buffer, skipped
[2024-08-22 03:23:33] [INFO] [xxx/] segment #4495 written
[2024-08-22 03:23:33] [INFO] [xxx/] segment #4496 written
[2024-08-22 03:23:33] [INFO] [xxx/] segment #4497 written
[2024-08-22 03:23:33] [INFO] [xxx/] segment #4498 written
[2024-08-22 03:23:33] [INFO] [xxx/] segment #4499 written
[2024-08-22 03:23:33] [INFO] [xxx/] segment #4500 written
[2024-08-22 03:23:33] [INFO] [xxx/] segment #4501 written
[2024-08-22 03:23:33] [INFO] [xxx/] segment #4502 written
[2024-08-22 03:23:39] [ERROR] [xxx/] segment #4695 request error, ignored: received status code 404
[2024-08-22 03:23:45] [ERROR] [xxx/] segment #4698 request error, ignored: received status code 404
[2024-08-22 03:23:48] [ERROR] [xxx/] segment list error, will try again [0/10]: ticket/private stream?
[2024-08-22 03:23:51] [ERROR] [xxx/] segment list error, will try again [1/10]: ticket/private stream?
[2024-08-22 03:23:54] [WARN] [xxx/] segment #4503 not found in buffer, skipped
[2024-08-22 03:23:54] [INFO] [xxx/] segment #4504 written
[2024-08-22 03:23:54] [INFO] [xxx/] segment #4505 written
[2024-08-22 03:23:54] [ERROR] [xxx/] segment list error, will try again [2/10]: ticket/private stream?
[2024-08-22 03:23:54] [WARN] [xxx/] segment #4506 not found in buffer, skipped
[2024-08-22 03:23:54] [INFO] [xxx/] segment #4507 written
[2024-08-22 03:23:54] [INFO] [xxx/] segment #4508 written
[2024-08-22 03:23:54] [INFO] [xxx/] segment #4509 written
[2024-08-22 03:23:54] [INFO] [xxx/] segment #4510 written
[2024-08-22 03:23:54] [INFO] [xxx/] segment #4511 written
[2024-08-22 03:23:54] [INFO] [xxx/] segment #4512 written
[2024-08-22 03:23:54] [INFO] [xxx/] segment #4513 written
[2024-08-22 03:23:54] [INFO] [xxx/] segment #4514 written
[2024-08-22 03:23:54] [INFO] [xxx/] segment #4515 written
[2024-08-22 03:23:54] [INFO] [xxx/] segment #4516 written
[2024-08-22 03:23:54] [INFO] [xxx/] segment #4517 written
[2024-08-22 03:23:54] [INFO] [xxx/] segment #4518 written
[2024-08-22 03:23:54] [INFO] [xxx/] segment #4519 written
[2024-08-22 03:23:57] [ERROR] [xxx/] segment list error, will try again [3/10]: ticket/private stream?
[2024-08-22 03:24:00] [ERROR] [xxx/] segment list error, will try again [4/10]: ticket/private stream?
[2024-08-22 03:24:03] [ERROR] [xxx/] segment list error, will try again [5/10]: ticket/private stream?
[2024-08-22 03:24:06] [ERROR] [xxx/] segment list error, will try again [6/10]: ticket/private stream?
[2024-08-22 03:24:09] [ERROR] [xxx/] segment list error, will try again [7/10]: ticket/private stream?
[2024-08-22 03:24:12] [ERROR] [xxx/] segment list error, will try again [8/10]: ticket/private stream?
[2024-08-22 03:24:15] [WARN] [xxx/] segment #4520 not found in buffer, skipped
[2024-08-22 03:24:15] [INFO] [xxx/] segment #4521 written
[2024-08-22 03:24:15] [INFO] [xxx/] segment #4522 written
[2024-08-22 03:24:15] [WARN] [xxx/] segment #4523 not found in buffer, skipped
[2024-08-22 03:24:15] [INFO] [xxx/] segment #4524 written
[2024-08-22 03:24:15] [INFO] [xxx/] segment #4525 written
[2024-08-22 03:24:15] [INFO] [xxx/] segment #4526 written
[2024-08-22 03:24:15] [INFO] [xxx/] segment #4527 written
[2024-08-22 03:24:16] [ERROR] [xxx/] segment list error, will try again [9/10]: ticket/private stream?
[2024-08-22 03:24:19] [ERROR] [xxx/] segment list error, will try again [10/10]: ticket/private stream?
[2024-08-22 03:24:22] [INFO] [xxx/] channel is offline, check again 1 min(s) later
[2024-08-22 03:24:36] [WARN] [xxx/] segment #4528 not found in buffer, skipped
[2024-08-22 03:24:36] [ERROR] [xxx/] segment #4529 written error: invalid argument
[2024-08-22 03:24:36] [ERROR] [xxx/] segment #4529 written error: invalid argument
[2024-08-22 03:24:36] [ERROR] [xxx/] segment #4529 written error: invalid argument
[endless loop segment #4529 written error]
[program crash]

Could you provide the country you live in, and do you use a VPN?
It might be a networking issue where the program fetched an empty segment and tried to write it to the file.

I am from Germany and currently I don‘t use a VPN


dns_cf.sh upstream update/merge [Upstream Bug / Remerge]

Hello OPNsense Devs,
When you get a chance could you one of you please update/merge the acme client code base to mirror the current master branch of the Neilpang's upstream project? Specifically could you please apply commit https://github.com/Neilpang/acme.sh/commit/7ba9a5972dd904b1b5834e7ef1a6a3323d1e29aa to fix a bug with dashes being present in the account email / name preventing acme.sh from working correctly.
Thanks,
Kyle

Hi Franco,
Sorry for not understanding what you meant. Yes I can locally modify my install to fix it since it is not complied and wait for the next official release for an OPNsense patch. I don't have the ETA for inclusion in the next official. Thanks for your help!
-Kyle

acme.sh's last release was 5+ months ago. That's a long time, but I'd suggest to keep on waiting for a new release... I don't want to bundle pre-release software.

It looks like this was resolved in the last 2 years…


How to setup both a blue-alsa audio device and on-board sound card for audio playback/auto switching?

Hi all,
I've managed to get audio working through my AirPods via the inbuilt bluetooth module but I am struggling to get both my sound card and audio working out of bluetooth simultaneously. I'm currently not using pulseaudio (only ALSA, via BlueAlsa - not using pulseaudio as I find it slows down RetroPie significantly) - on a Raspberry Pi 4 running latest kernel.
My current .asoundrc file looks like this:
pcm.!default {
  type asym
  playback.pcm {
    type plug
    slave.pcm "output"
  }
  capture.pcm {
    type plug
    slave.pcm "input"
  }
}

pcm.output {
  type hw
  card 0
}

ctl.!default {
  type hw
  card 0
}

pcm.!default {
        type plug
        slave {
                pcm {
                        type bluealsa
                        device BC:B8:63:45:65:C0
                        profile "a2dp"
                }
        }
        hint {
                show on
                description "Apple AirPods"
        }
}
ctl.!default {
        type bluealsa
}

Is there any way to get both audio playing out of both devices, ideally whereby one audio device switches off (i.e the internal audio card - default device) when the bluetooth speakers are connected and vice versa? I think I need to shift the pcm.!default & ctl.!default contents somewhere else, but this doesn't seem to work for both audio cards (i.e sound only comes out of the bluetooth speaker with the above configurations) at the moment. Sorry for the nooby question, any help would be sincerely appreciated!
Thank you.

ALSA uses only 1 definition for a given pcm name, the last one it sees when parsing the config. So in your case the pcm "default" has the bluealsa definition, and the first asym definiton is completely ignored. I'm afraid there isn't any easy answer for what you are trying to do when using only ALSA - this is a generic ALSA limitation and is one of the reasons that audio servers such as PulseAudio were introduced in the first place. There are some ideas relating to the use of BlueALSA as pcm.default, with a fallback option to soundcard, in the wiki article https://github.com/Arkq/bluez-alsa/wiki/Using-BlueALSA-as-default-ALSA-PCM. I'm not sure that is exactly what you want, and it does require some co-operation from the music player application, but its probably worth reading to get some idea of what can and cannot be done without having an audio server between the applications and ALSA.

This issue appears to be abandoned. Closing.


HDDS-8724. FixedLengthStringCodec may silently replace unsupported characters.

What changes were proposed in this pull request?
FixedLengthStringCodec simply uses String.getBytes(ASCII_CSN) to encode a string. It may silently replace unsupported characters with '?'. It should throw an exception instead.
  @Test
  public void testFixedLengthStringCodec() throws Exception {
    final Codec<String> codec = FixedLengthStringCodec.get();
    final String original = "Ozone 是 Hadoop 的分布式对象存储系统，具有易扩展和冗余存储的特点。";
    final byte[] encoded = codec.toPersistedFormat(original);
    final String decoded = codec.fromPersistedFormat(encoded);
    Assertions.assertEquals(original, decoded);
  }

For example, the test above will fail.
org.opentest4j.AssertionFailedError:
Expected :Ozone 是 Hadoop 的分布式对象存储系统，具有易扩展和冗余存储的特点。
Actual   :Ozone ? Hadoop ?????????????????????????

What is the link to the Apache JIRA
https://issues.apache.org/jira/browse/HDDS-8724
How was this patch tested?
Added a new test.

@adoroszlai , thanks a lot for reviewing and merging this!


Added properties to error classes typescript types

Adding error types as outlined in: https://github.com/tulios/kafkajs/issues/886

Awesome! Thanks for the contribution.


[stable/nextcloud] support statically assigning nodePort

What this PR does / why we need it:
The nodePort can not be statically assigned in the current chart. This makes nextcloud hard to integrate with external load balancers.
Checklist
[Place an '[x]' (no spaces) in all applicable fields. Please remove unrelated fields.]

[x] DCO signed
[x] Chart Version bumped
[x] Variables are documented in the README.md
[x] Title of the PR starts with chart name (e.g. [stable/mychartname])

/assign @billimek

/ok-to-test

/lgtm


[Question] How to train sockeye in multi machine?

I have read the document of sockeye. It seems that sockeye does not support multi machine distributed training. I wonder if there is a way to achieve it?

Hi Adnios,
Sockeye supports training on any number of GPUs and nodes using Horovod.
You can convert the recipe for multi-GPU training to multi-node training by editing horovodrun command to specify multiple hosts, similar to this example.
While multi-node training provides access to more GPUs, it also introduces more overhead for sharing data across GPUs.  In the experiments for the 2020 Sockeye paper, we found that training on 8 GPUs on a single node delivered the best value.
Best,
Michael


No module named tkinter_designer.py

I have followed the instructions in the PDF provided in the repo and noticed that there isn't any module name tkinter_designer.py in the root dir of the repo. However, the instructions found in the fore-mentioned PDF requires two steps after cloning the repo:
1- pip install -r requirements.txt
2- python3 tkinter_designer.py
The problem lies in the second command.
Am I doing sth wrong?

I haven't checked the PDF but it maybe that the information in there is out of date. Always check the instructions in the repo first:
https://github.com/ParthJadhav/Tkinter-Designer/blob/master/docs/instructions.md#using-tkinter-designer-top
From here:
https://github.com/ParthJadhav/Tkinter-Designer/blob/master/docs/instructions.md


Two pods with the same persistent disk won't schedule on the same machine.

Easy to reproduce.  My setup is a single pod (master) and a replication controller (slaves) that should put one pod on each minion.  The master schedules on one machine, N-1 slaves schedule on all other machines, and 1 slave is left in state Pending and the error 'NoDiskConflictNode' shows up on a kubectl describe.

/cc @thockin @vishh @satnam6502 @quinton-hoole

Can you prepare a PR or point us to a snapshot which we can repo to make sure we are on the same page as well as node? Thank you.

And please put down that knife.

Make a disk named 'workspace' (or make the appropriate changes below)
Start a cluster with 3 minions.
Use the files listed below to do this...

  kubectl create master.json
  kubectl create slaves.json

master.json
{
  "id": "master",
  "kind": "Pod",
  "apiVersion": "v1beta1",
  "labels": {
    "app": "master",
    "stats": "stats"
  },
  "desiredState": {
    "manifest": {
      "version": "v1beta1",
      "id": "master",
      "containers": [{
        "name": "master",
        "image": "kubernetes/pause",
        "imagePullPolicy": "PullAlways",
        "volumeMounts": [
          {
            "mountPath": "/workspace",
            "name": "workspace"
          }
        ]
      }],
      "volumes": [
        {
          "name": "workspace",
          "source": {
            "persistentDisk": {
                "pdName":   "workspace",
                "fsType":   "ext4",
                "readOnly": true
            }
          }
        }
      ]
    }
  }
}

slaves.json
{
  "id": "slaves-controller",
  "kind": "ReplicationController",
  "apiVersion": "v1beta1",
  "desiredState": {
    "replicas": 3,
    "replicaSelector": {"name": "slaves"},
    "podTemplate": {
      "desiredState": {
        "manifest": {
          "version": "v1beta1",
          "id": "placerSlaveController",
          "containers": [{
            "name": "slave",
            "image": "kubernetes/pause",
            "imagePullPolicy": "PullAlways",
            "volumeMounts": [{
                "mountPath": "/data",
                "name": "workspace"
            }]
          }],
          "volumes": [{
            "name": "workspace",
            "source": {
              "persistentDisk": {
                  "pdName":   "workspace",
                  "fsType":   "ext4",
                  "readOnly": true
              }
            }
          }]
        }
      },
      "labels": {
        "name": "slaves"
      }
    }
  },
  "labels": {"name": "slaves"}
}

What version of kubernetes are you running? Can you provide the output of kubectl version?
Can you also post the complete output of kubectl describe on your slave pods?

Versions:
$ kubectl version
Client Version: version.Info{Major:"0", Minor:"16", GitVersion:"v0.16.1", GitCommit:"b933dda5369043161fa7c7330dfcfbc4624d40e6", GitTreeState:"clean"}
Server Version: version.Info{Major:"0", Minor:"17", GitVersion:"v0.17.0", GitCommit:"82f8bdac06ddfacf493a9ed0fedc85f5ea62ebd5", GitTreeState:"clean"}

This slave is working properly:
$ kubectl describe pod slaves-controller-kyrck
W0519 21:36:18.377248   18600 request.go:289] field selector: v1beta1 - events - involvedObject.id - slaves-controller-kyrck: need to check if this is versioned correctly.
W0519 21:36:18.377480   18600 request.go:289] field selector: v1beta1 - events - involvedObject.namespace - default: need to check if this is versioned correctly.
W0519 21:36:18.377594   18600 request.go:289] field selector: v1beta1 - events - involvedObject.uid - d67d28c7-fe6e-11e4-bd80-42010af032d5: need to check if this is versioned correctly.
Name:				slaves-controller-kyrck
Image(s):			kubernetes/pause
Host:				kubernetes-minion-7e8m/<IP_ADDRESS>
Labels:				name=slaves
Status:				Running
Replication Controllers:	slaves-controller (3/3 replicas created)
Containers:
  slave:
    Image:		kubernetes/pause
    State:		Running
      Started:		Tue, 19 May 2015 21:34:49 +0000
    Ready:		True
    Restart Count:	0
Conditions:
  Type		Status
  Ready 	True
Events:
  FirstSeen				LastSeen			Count	From					SubobjectPath				Reason		Message
  Tue, 19 May 2015 21:34:32 +0000	Tue, 19 May 2015 21:34:32 +0000	1	{scheduler }									scheduled	Successfully assigned slaves-controller-kyrck to kubernetes-minion-7e8m
  Tue, 19 May 2015 21:34:42 +0000	Tue, 19 May 2015 21:34:42 +0000	1	{kubelet kubernetes-minion-7e8m}						failedMount	Unable to mount volumes for pod "slaves-controller-kyrck_default": Could not attach disk: Timeout after 10s
  Tue, 19 May 2015 21:34:43 +0000	Tue, 19 May 2015 21:34:43 +0000	1	{kubelet kubernetes-minion-7e8m}						failedSync	Error syncing pod, skipping: Could not attach disk: Timeout after 10s
  Tue, 19 May 2015 21:34:44 +0000	Tue, 19 May 2015 21:34:44 +0000	1	{kubelet kubernetes-minion-7e8m}	implicitly required container POD	created		Created with docker id caf39f4b736d20d26302f79416c5a6c9d97dd5c4b0bccc0a031507f30142429f
  Tue, 19 May 2015 21:34:44 +0000	Tue, 19 May 2015 21:34:44 +0000	1	{kubelet kubernetes-minion-7e8m}	implicitly required container POD	pulled		Successfully pulled image "gcr.io/google_containers/pause:0.8.0"
  Tue, 19 May 2015 21:34:44 +0000	Tue, 19 May 2015 21:34:44 +0000	1	{kubelet kubernetes-minion-7e8m}	implicitly required container POD	started		Started with docker id caf39f4b736d20d26302f79416c5a6c9d97dd5c4b0bccc0a031507f30142429f
  Tue, 19 May 2015 21:34:48 +0000	Tue, 19 May 2015 21:34:48 +0000	1	{kubelet kubernetes-minion-7e8m}	spec.containers{slave}			pulled		Successfully pulled image "kubernetes/pause"
  Tue, 19 May 2015 21:34:49 +0000	Tue, 19 May 2015 21:34:49 +0000	1	{kubelet kubernetes-minion-7e8m}	spec.containers{slave}			created		Created with docker id 39e5eef26189ab6437b3efeb8cfc47fc845483cf38cf8e3f8de5bcef6941fab0
  Tue, 19 May 2015 21:34:49 +0000	Tue, 19 May 2015 21:34:49 +0000	1	{kubelet kubernetes-minion-7e8m}	spec.containers{slave}			started		Started with docker id 39e5eef26189ab6437b3efeb8cfc47fc845483cf38cf8e3f8de5bcef6941fab0

This slave is not:
$ kubectl describe pod slaves-controller-ku9oc
W0519 21:37:55.237497   18648 request.go:289] field selector: v1beta1 - events - involvedObject.id - slaves-controller-ku9oc: need to check if this is versioned correctly.
W0519 21:37:55.237779   18648 request.go:289] field selector: v1beta1 - events - involvedObject.namespace - default: need to check if this is versioned correctly.
W0519 21:37:55.237945   18648 request.go:289] field selector: v1beta1 - events - involvedObject.uid - d67d9032-fe6e-11e4-bd80-42010af032d5: need to check if this is versioned correctly.
Name:				slaves-controller-ku9oc
Image(s):			kubernetes/pause
Host:				/
Labels:				name=slaves
Status:				Pending
Replication Controllers:	slaves-controller (3/3 replicas created)
Containers:
Events:
  FirstSeen				LastSeen			Count	From		SubobjectPath	Reason			Message
  Tue, 19 May 2015 21:34:32 +0000	Tue, 19 May 2015 21:34:32 +0000	1	{scheduler }			failedScheduling	Error scheduling: failed to find fit for pod: &{{ } {slaves-controller-ku9oc slaves-controller- default /api/v1beta3/namespaces/default/pods/slaves-controller-ku9oc d67d9032-fe6e-11e4-bd80-42010af032d5 427 2015-05-19 21:34:32 +0000 UTC <nil> map[name:slaves] map[kubernetes.io/created-by:{"kind":"SerializedReference","apiVersion":"v1beta3","reference":{"kind":"ReplicationController","namespace":"default","name":"slaves-controller","uid":"d67ae275-fe6e-11e4-bd80-42010af032d5","apiVersion":"v1beta3","resourceVersion":"424"}}]} {[{workspace {<nil> <nil> 0xc2082e0cf0 <nil> <nil> <nil> <nil> <nil> <nil> <nil>}}] [{slave kubernetes/pause [] []  [] [] {map[] map[]} [{workspace false /data}] <nil> <nil> <nil> /dev/termination-log Always 0xc208397ea0}] Always <nil> ClusterFirst map[]  false} {Pending []    []}}Node kubernetes-minion-7e8m: NoDiskConflictNode kubernetes-minion-w944: NoDiskConflictNode kubernetes-minion-shk4: NoDiskConflict
  Tue, 19 May 2015 21:34:33 +0000	Tue, 19 May 2015 21:34:33 +0000	1	{scheduler }			failedScheduling	Error scheduling: failed to find fit for pod: &{{ } {slaves-controller-ku9oc slaves-controller- default /api/v1beta3/namespaces/default/pods/slaves-controller-ku9oc d67d9032-fe6e-11e4-bd80-42010af032d5 427 2015-05-19 21:34:32 +0000 UTC <nil> map[name:slaves] map[kubernetes.io/created-by:{"kind":"SerializedReference","apiVersion":"v1beta3","reference":{"kind":"ReplicationController","namespace":"default","name":"slaves-controller","uid":"d67ae275-fe6e-11e4-bd80-42010af032d5","apiVersion":"v1beta3","resourceVersion":"424"}}]} {[{workspace {<nil> <nil> 0xc20824c270 <nil> <nil> <nil> <nil> <nil> <nil> <nil>}}] [{slave kubernetes/pause [] []  [] [] {map[] map[]} [{workspace false /data}] <nil> <nil> <nil> /dev/termination-log Always 0xc2083e3980}] Always <nil> ClusterFirst map[]  false} {Pending []    []}}Node kubernetes-minion-7e8m: NoDiskConflictNode kubernetes-minion-w944: NoDiskConflictNode kubernetes-minion-shk4: NoDiskConflict
  Tue, 19 May 2015 21:34:35 +0000	Tue, 19 May 2015 21:34:35 +0000	1	{scheduler }			failedScheduling	Error scheduling: failed to find fit for pod: &{{ } {slaves-controller-ku9oc slaves-controller- default /api/v1beta3/namespaces/default/pods/slaves-controller-ku9oc d67d9032-fe6e-11e4-bd80-42010af032d5 427 2015-05-19 21:34:32 +0000 UTC <nil> map[name:slaves] map[kubernetes.io/created-by:{"kind":"SerializedReference","apiVersion":"v1beta3","reference":{"kind":"ReplicationController","namespace":"default","name":"slaves-controller","uid":"d67ae275-fe6e-11e4-bd80-42010af032d5","apiVersion":"v1beta3","resourceVersion":"424"}}]} {[{workspace {<nil> <nil> 0xc20816db90 <nil> <nil> <nil> <nil> <nil> <nil> <nil>}}] [{slave kubernetes/pause [] []  [] [] {map[] map[]} [{workspace false /data}] <nil> <nil> <nil> /dev/termination-log Always 0xc208286620}] Always <nil> ClusterFirst map[]  false} {Pending []    []}}Node kubernetes-minion-shk4: NoDiskConflictNode kubernetes-minion-7e8m: NoDiskConflictNode kubernetes-minion-w944: NoDiskConflict
  Tue, 19 May 2015 21:34:39 +0000	Tue, 19 May 2015 21:34:39 +0000	1	{scheduler }			failedScheduling	Error scheduling: failed to find fit for pod: &{{ } {slaves-controller-ku9oc slaves-controller- default /api/v1beta3/namespaces/default/pods/slaves-controller-ku9oc d67d9032-fe6e-11e4-bd80-42010af032d5 427 2015-05-19 21:34:32 +0000 UTC <nil> map[name:slaves] map[kubernetes.io/created-by:{"kind":"SerializedReference","apiVersion":"v1beta3","reference":{"kind":"ReplicationController","namespace":"default","name":"slaves-controller","uid":"d67ae275-fe6e-11e4-bd80-42010af032d5","apiVersion":"v1beta3","resourceVersion":"424"}}]} {[{workspace {<nil> <nil> 0xc208277050 <nil> <nil> <nil> <nil> <nil> <nil> <nil>}}] [{slave kubernetes/pause [] []  [] [] {map[] map[]} [{workspace false /data}] <nil> <nil> <nil> /dev/termination-log Always 0xc208269060}] Always <nil> ClusterFirst map[]  false} {Pending []    []}}Node kubernetes-minion-7e8m: NoDiskConflictNode kubernetes-minion-w944: NoDiskConflictNode kubernetes-minion-shk4: NoDiskConflict
  Tue, 19 May 2015 21:34:47 +0000	Tue, 19 May 2015 21:34:47 +0000	1	{scheduler }			failedScheduling	Error scheduling: failed to find fit for pod: &{{ } {slaves-controller-ku9oc slaves-controller- default /api/v1beta3/namespaces/default/pods/slaves-controller-ku9oc d67d9032-fe6e-11e4-bd80-42010af032d5 427 2015-05-19 21:34:32 +0000 UTC <nil> map[name:slaves] map[kubernetes.io/created-by:{"kind":"SerializedReference","apiVersion":"v1beta3","reference":{"kind":"ReplicationController","namespace":"default","name":"slaves-controller","uid":"d67ae275-fe6e-11e4-bd80-42010af032d5","apiVersion":"v1beta3","resourceVersion":"424"}}]} {[{workspace {<nil> <nil> 0xc20823b110 <nil> <nil> <nil> <nil> <nil> <nil> <nil>}}] [{slave kubernetes/pause [] []  [] [] {map[] map[]} [{workspace false /data}] <nil> <nil> <nil> /dev/termination-log Always 0xc2081a2000}] Always <nil> ClusterFirst map[]  false} {Pending []    []}}Node kubernetes-minion-shk4: NoDiskConflictNode kubernetes-minion-7e8m: NoDiskConflictNode kubernetes-minion-w944: NoDiskConflict
  Tue, 19 May 2015 21:35:03 +0000	Tue, 19 May 2015 21:35:03 +0000	1	{scheduler }			failedScheduling	Error scheduling: failed to find fit for pod: &{{ } {slaves-controller-ku9oc slaves-controller- default /api/v1beta3/namespaces/default/pods/slaves-controller-ku9oc d67d9032-fe6e-11e4-bd80-42010af032d5 427 2015-05-19 21:34:32 +0000 UTC <nil> map[name:slaves] map[kubernetes.io/created-by:{"kind":"SerializedReference","apiVersion":"v1beta3","reference":{"kind":"ReplicationController","namespace":"default","name":"slaves-controller","uid":"d67ae275-fe6e-11e4-bd80-42010af032d5","apiVersion":"v1beta3","resourceVersion":"424"}}]} {[{workspace {<nil> <nil> 0xc2083fb7a0 <nil> <nil> <nil> <nil> <nil> <nil> <nil>}}] [{slave kubernetes/pause [] []  [] [] {map[] map[]} [{workspace false /data}] <nil> <nil> <nil> /dev/termination-log Always 0xc208301c20}] Always <nil> ClusterFirst map[]  false} {Pending []    []}}Node kubernetes-minion-7e8m: NoDiskConflictNode kubernetes-minion-w944: NoDiskConflictNode kubernetes-minion-shk4: NoDiskConflict
  Tue, 19 May 2015 21:35:35 +0000	Tue, 19 May 2015 21:35:35 +0000	1	{scheduler }			failedScheduling	Error scheduling: failed to find fit for pod: &{{ } {slaves-controller-ku9oc slaves-controller- default /api/v1beta3/namespaces/default/pods/slaves-controller-ku9oc d67d9032-fe6e-11e4-bd80-42010af032d5 427 2015-05-19 21:34:32 +0000 UTC <nil> map[name:slaves] map[kubernetes.io/created-by:{"kind":"SerializedReference","apiVersion":"v1beta3","reference":{"kind":"ReplicationController","namespace":"default","name":"slaves-controller","uid":"d67ae275-fe6e-11e4-bd80-42010af032d5","apiVersion":"v1beta3","resourceVersion":"424"}}]} {[{workspace {<nil> <nil> 0xc20845d0e0 <nil> <nil> <nil> <nil> <nil> <nil> <nil>}}] [{slave kubernetes/pause [] []  [] [] {map[] map[]} [{workspace false /data}] <nil> <nil> <nil> /dev/termination-log Always 0xc208457a80}] Always <nil> ClusterFirst map[]  false} {Pending []    []}}Node kubernetes-minion-shk4: NoDiskConflictNode kubernetes-minion-7e8m: NoDiskConflictNode kubernetes-minion-w944: NoDiskConflict
  Tue, 19 May 2015 21:36:35 +0000	Tue, 19 May 2015 21:36:35 +0000	1	{scheduler }			failedScheduling	Error scheduling: failed to find fit for pod: &{{ } {slaves-controller-ku9oc slaves-controller- default /api/v1beta3/namespaces/default/pods/slaves-controller-ku9oc d67d9032-fe6e-11e4-bd80-42010af032d5 427 2015-05-19 21:34:32 +0000 UTC <nil> map[name:slaves] map[kubernetes.io/created-by:{"kind":"SerializedReference","apiVersion":"v1beta3","reference":{"kind":"ReplicationController","namespace":"default","name":"slaves-controller","uid":"d67ae275-fe6e-11e4-bd80-42010af032d5","apiVersion":"v1beta3","resourceVersion":"424"}}]} {[{workspace {<nil> <nil> 0xc2083721e0 <nil> <nil> <nil> <nil> <nil> <nil> <nil>}}] [{slave kubernetes/pause [] []  [] [] {map[] map[]} [{workspace false /data}] <nil> <nil> <nil> /dev/termination-log Always 0xc2083968e0}] Always <nil> ClusterFirst map[]  false} {Pending []    []}}Node kubernetes-minion-w944: NoDiskConflictNode kubernetes-minion-shk4: NoDiskConflictNode kubernetes-minion-7e8m: NoDiskConflict
  Tue, 19 May 2015 21:36:36 +0000	Tue, 19 May 2015 21:36:36 +0000	1	{scheduler }			failedScheduling	Error scheduling: failed to find fit for pod: &{{ } {slaves-controller-ku9oc slaves-controller- default /api/v1beta3/namespaces/default/pods/slaves-controller-ku9oc d67d9032-fe6e-11e4-bd80-42010af032d5 427 2015-05-19 21:34:32 +0000 UTC <nil> map[name:slaves] map[kubernetes.io/created-by:{"kind":"SerializedReference","apiVersion":"v1beta3","reference":{"kind":"ReplicationController","namespace":"default","name":"slaves-controller","uid":"d67ae275-fe6e-11e4-bd80-42010af032d5","apiVersion":"v1beta3","resourceVersion":"424"}}]} {[{workspace {<nil> <nil> 0xc208258690 <nil> <nil> <nil> <nil> <nil> <nil> <nil>}}] [{slave kubernetes/pause [] []  [] [] {map[] map[]} [{workspace false /data}] <nil> <nil> <nil> /dev/termination-log Always 0xc20829a580}] Always <nil> ClusterFirst map[]  false} {Pending []    []}}Node kubernetes-minion-7e8m: NoDiskConflictNode kubernetes-minion-w944: NoDiskConflictNode kubernetes-minion-shk4: NoDiskConflict
  Tue, 19 May 2015 21:36:38 +0000	Tue, 19 May 2015 21:36:38 +0000	1	{scheduler }			failedScheduling	Error scheduling: failed to find fit for pod: &{{ } {slaves-controller-ku9oc slaves-controller- default /api/v1beta3/namespaces/default/pods/slaves-controller-ku9oc d67d9032-fe6e-11e4-bd80-42010af032d5 427 2015-05-19 21:34:32 +0000 UTC <nil> map[name:slaves] map[kubernetes.io/created-by:{"kind":"SerializedReference","apiVersion":"v1beta3","reference":{"kind":"ReplicationController","namespace":"default","name":"slaves-controller","uid":"d67ae275-fe6e-11e4-bd80-42010af032d5","apiVersion":"v1beta3","resourceVersion":"424"}}]} {[{workspace {<nil> <nil> 0xc2083d8ab0 <nil> <nil> <nil> <nil> <nil> <nil> <nil>}}] [{slave kubernetes/pause [] []  [] [] {map[] map[]} [{workspace false /data}] <nil> <nil> <nil> /dev/termination-log Always 0xc208426120}] Always <nil> ClusterFirst map[]  false} {Pending []    []}}Node kubernetes-minion-w944: NoDiskConflictNode kubernetes-minion-shk4: NoDiskConflictNode kubernetes-minion-7e8m: NoDiskConflict
  Tue, 19 May 2015 21:36:42 +0000	Tue, 19 May 2015 21:36:42 +0000	1	{scheduler }			failedScheduling	Error scheduling: failed to find fit for pod: &{{ } {slaves-controller-ku9oc slaves-controller- default /api/v1beta3/namespaces/default/pods/slaves-controller-ku9oc d67d9032-fe6e-11e4-bd80-42010af032d5 427 2015-05-19 21:34:32 +0000 UTC <nil> map[name:slaves] map[kubernetes.io/created-by:{"kind":"SerializedReference","apiVersion":"v1beta3","reference":{"kind":"ReplicationController","namespace":"default","name":"slaves-controller","uid":"d67ae275-fe6e-11e4-bd80-42010af032d5","apiVersion":"v1beta3","resourceVersion":"424"}}]} {[{workspace {<nil> <nil> 0xc2082e0300 <nil> <nil> <nil> <nil> <nil> <nil> <nil>}}] [{slave kubernetes/pause [] []  [] [] {map[] map[]} [{workspace false /data}] <nil> <nil> <nil> /dev/termination-log Always 0xc2082e2c60}] Always <nil> ClusterFirst map[]  false} {Pending []    []}}Node kubernetes-minion-7e8m: NoDiskConflictNode kubernetes-minion-w944: NoDiskConflictNode kubernetes-minion-shk4: NoDiskConflict
  Tue, 19 May 2015 21:36:50 +0000	Tue, 19 May 2015 21:36:50 +0000	1	{scheduler }			failedScheduling	Error scheduling: failed to find fit for pod: &{{ } {slaves-controller-ku9oc slaves-controller- default /api/v1beta3/namespaces/default/pods/slaves-controller-ku9oc d67d9032-fe6e-11e4-bd80-42010af032d5 427 2015-05-19 21:34:32 +0000 UTC <nil> map[name:slaves] map[kubernetes.io/created-by:{"kind":"SerializedReference","apiVersion":"v1beta3","reference":{"kind":"ReplicationController","namespace":"default","name":"slaves-controller","uid":"d67ae275-fe6e-11e4-bd80-42010af032d5","apiVersion":"v1beta3","resourceVersion":"424"}}]} {[{workspace {<nil> <nil> 0xc2083df7a0 <nil> <nil> <nil> <nil> <nil> <nil> <nil>}}] [{slave kubernetes/pause [] []  [] [] {map[] map[]} [{workspace false /data}] <nil> <nil> <nil> /dev/termination-log Always 0xc2083e29c0}] Always <nil> ClusterFirst map[]  false} {Pending []    []}}Node kubernetes-minion-7e8m: NoDiskConflictNode kubernetes-minion-w944: NoDiskConflictNode kubernetes-minion-shk4: NoDiskConflict
  Tue, 19 May 2015 21:37:06 +0000	Tue, 19 May 2015 21:37:06 +0000	1	{scheduler }			failedScheduling	Error scheduling: failed to find fit for pod: &{{ } {slaves-controller-ku9oc slaves-controller- default /api/v1beta3/namespaces/default/pods/slaves-controller-ku9oc d67d9032-fe6e-11e4-bd80-42010af032d5 427 2015-05-19 21:34:32 +0000 UTC <nil> map[name:slaves] map[kubernetes.io/created-by:{"kind":"SerializedReference","apiVersion":"v1beta3","reference":{"kind":"ReplicationController","namespace":"default","name":"slaves-controller","uid":"d67ae275-fe6e-11e4-bd80-42010af032d5","apiVersion":"v1beta3","resourceVersion":"424"}}]} {[{workspace {<nil> <nil> 0xc208404360 <nil> <nil> <nil> <nil> <nil> <nil> <nil>}}] [{slave kubernetes/pause [] []  [] [] {map[] map[]} [{workspace false /data}] <nil> <nil> <nil> /dev/termination-log Always 0xc208407220}] Always <nil> ClusterFirst map[]  false} {Pending []    []}}Node kubernetes-minion-7e8m: NoDiskConflictNode kubernetes-minion-w944: NoDiskConflictNode kubernetes-minion-shk4: NoDiskConflict
  Tue, 19 May 2015 21:37:38 +0000	Tue, 19 May 2015 21:37:38 +0000	1	{scheduler }			failedScheduling	Error scheduling: failed to find fit for pod: &{{ } {slaves-controller-ku9oc slaves-controller- default /api/v1beta3/namespaces/default/pods/slaves-controller-ku9oc d67d9032-fe6e-11e4-bd80-42010af032d5 427 2015-05-19 21:34:32 +0000 UTC <nil> map[name:slaves] map[kubernetes.io/created-by:{"kind":"SerializedReference","apiVersion":"v1beta3","reference":{"kind":"ReplicationController","namespace":"default","name":"slaves-controller","uid":"d67ae275-fe6e-11e4-bd80-42010af032d5","apiVersion":"v1beta3","resourceVersion":"424"}}]} {[{workspace {<nil> <nil> 0xc208464870 <nil> <nil> <nil> <nil> <nil> <nil> <nil>}}] [{slave kubernetes/pause [] []  [] [] {map[] map[]} [{workspace false /data}] <nil> <nil> <nil> /dev/termination-log Always 0xc2084688a0}] Always <nil> ClusterFirst map[]  false} {Pending []    []}}Node kubernetes-minion-7e8m: NoDiskConflictNode kubernetes-minion-w944: NoDiskConflictNode kubernetes-minion-shk4: NoDiskConflict

Can't reproduce.
I just ran this pod twice and both instances are running and can find the
PD mounted.  Cna you try running this (obvious adjust the pdName and the
host.
apiVersion: v1beta3
kind: Pod
metadata:
  generateName: thtest-
  labels:
      name: thtest
  namespace: default
spec:
  containers:
  - command:
    - "sleep"
    - "1000"
    image: busybox
    name: sleep
    volumeMounts:
    - mountPath: /pd
      name: pd
  host: kubernetes-minion-jrlj
  volumes:
  - name: pd
    gcePersistentDisk:
        pdName: testssd
        fsType: ext4
        readOnly: true

On Tue, May 19, 2015 at 2:40 PM, runningwild<EMAIL_ADDRESS>wrote:

Versions:
$ kubectl version
Client Version: version.Info{Major:"0", Minor:"16", GitVersion:"v0.16.1", GitCommit:"b933dda5369043161fa7c7330dfcfbc4624d40e6", GitTreeState:"clean"}
Server Version: version.Info{Major:"0", Minor:"17", GitVersion:"v0.17.0", GitCommit:"82f8bdac06ddfacf493a9ed0fedc85f5ea62ebd5", GitTreeState:"clean"}
This slave is working properly:
$ kubectl describe pod slaves-controller-kyrck
W0519 21:36:18.377248   18600 request.go:289] field selector: v1beta1 - events - involvedObject.id - slaves-controller-kyrck: need to check if this is versioned correctly.
W0519 21:36:18.377480   18600 request.go:289] field selector: v1beta1 - events - involvedObject.namespace - default: need to check if this is versioned correctly.
W0519 21:36:18.377594   18600 request.go:289] field selector: v1beta1 - events - involvedObject.uid - d67d28c7-fe6e-11e4-bd80-42010af032d5: need to check if this is versioned correctly.
Name:               slaves-controller-kyrck
Image(s):           kubernetes/pause
Host:               kubernetes-minion-7e8m/<IP_ADDRESS>
Labels:             name=slaves
Status:             Running
Replication Controllers:    slaves-controller (3/3 replicas created)
Containers:
slave:
Image:      kubernetes/pause
State:      Running
Started:      Tue, 19 May 2015 21:34:49 +0000
Ready:      True
Restart Count:  0
Conditions:
Type      Status
Ready     True
Events:
FirstSeen             LastSeen            Count   From                    SubobjectPath               Reason      Message
Tue, 19 May 2015 21:34:32 +0000   Tue, 19 May 2015 21:34:32 +0000 1   {scheduler }                                    scheduled   Successfully assigned slaves-controller-kyrck to kubernetes-minion-7e8m
Tue, 19 May 2015 21:34:42 +0000   Tue, 19 May 2015 21:34:42 +0000 1   {kubelet kubernetes-minion-7e8m}                        failedMount Unable to mount volumes for pod "slaves-controller-kyrck_default": Could not attach disk: Timeout after 10s
Tue, 19 May 2015 21:34:43 +0000   Tue, 19 May 2015 21:34:43 +0000 1   {kubelet kubernetes-minion-7e8m}                        failedSync  Error syncing pod, skipping: Could not attach disk: Timeout after 10s
Tue, 19 May 2015 21:34:44 +0000   Tue, 19 May 2015 21:34:44 +0000 1   {kubelet kubernetes-minion-7e8m}    implicitly required container POD   created     Created with docker id caf39f4b736d20d26302f79416c5a6c9d97dd5c4b0bccc0a031507f30142429f
Tue, 19 May 2015 21:34:44 +0000   Tue, 19 May 2015 21:34:44 +0000 1   {kubelet kubernetes-minion-7e8m}    implicitly required container POD   pulled      Successfully pulled image "gcr.io/google_containers/pause:0.8.0"
Tue, 19 May 2015 21:34:44 +0000   Tue, 19 May 2015 21:34:44 +0000 1   {kubelet kubernetes-minion-7e8m}    implicitly required container POD   started     Started with docker id caf39f4b736d20d26302f79416c5a6c9d97dd5c4b0bccc0a031507f30142429f
Tue, 19 May 2015 21:34:48 +0000   Tue, 19 May 2015 21:34:48 +0000 1   {kubelet kubernetes-minion-7e8m}    spec.containers{slave}          pulled      Successfully pulled image "kubernetes/pause"
Tue, 19 May 2015 21:34:49 +0000   Tue, 19 May 2015 21:34:49 +0000 1   {kubelet kubernetes-minion-7e8m}    spec.containers{slave}          created     Created with docker id 39e5eef26189ab6437b3efeb8cfc47fc845483cf38cf8e3f8de5bcef6941fab0
Tue, 19 May 2015 21:34:49 +0000   Tue, 19 May 2015 21:34:49 +0000 1   {kubelet kubernetes-minion-7e8m}    spec.containers{slave}          started     Started with docker id 39e5eef26189ab6437b3efeb8cfc47fc845483cf38cf8e3f8de5bcef6941fab0
This slave is not:
$ kubectl describe pod slaves-controller-ku9oc
W0519 21:37:55.237497   18648 request.go:289] field selector: v1beta1 - events - involvedObject.id - slaves-controller-ku9oc: need to check if this is versioned correctly.
W0519 21:37:55.237779   18648 request.go:289] field selector: v1beta1 - events - involvedObject.namespace - default: need to check if this is versioned correctly.
W0519 21:37:55.237945   18648 request.go:289] field selector: v1beta1 - events - involvedObject.uid - d67d9032-fe6e-11e4-bd80-42010af032d5: need to check if this is versioned correctly.
Name:               slaves-controller-ku9oc
Image(s):           kubernetes/pause
Host:               /
Labels:             name=slaves
Status:             Pending
Replication Controllers:    slaves-controller (3/3 replicas created)
Containers:
Events:
FirstSeen             LastSeen            Count   From        SubobjectPath   Reason          Message
Tue, 19 May 2015 21:34:32 +0000   Tue, 19 May 2015 21:34:32 +0000 1   {scheduler }            failedScheduling    Error scheduling: failed to find fit for pod: &{{ } {slaves-controller-ku9oc slaves-controller- default /api/v1beta3/namespaces/default/pods/slaves-controller-ku9oc d67d9032-fe6e-11e4-bd80-42010af032d5 427 2015-05-19 21:34:32 +0000 UTC  map[name:slaves] map[kubernetes.io/created-by:{ http://kubernetes.io/created-by:{"kind":"SerializedReference","apiVersion":"v1beta3","reference":{"kind":"ReplicationController","namespace":"default","name":"slaves-controller","uid":"d67ae275-fe6e-11e4-bd80-42010af032d5","apiVersion":"v1beta3","resourceVersion":"424"}}]} {[{workspace {  0xc2082e0cf0       }}] [{slave kubernetes/pause [] []  [] [] {map[] map[]} [{workspace false /data}]    /dev/termination-log Always 0xc208397ea0}] Always  ClusterFirst map[]
false} {
Pending []    []}}Node kubernetes-minion-7e8m: NoDiskConflictNode kubernetes-minion-w944: NoDiskConflictNode kubernetes-minion-shk4: NoDiskConflict
Tue, 19 May 2015 21:34:33 +0000   Tue, 19 May 2015 21:34:33 +0000 1   {scheduler }            failedScheduling    Error scheduling: failed to find fit for pod: &{{ } {slaves-controller-ku9oc slaves-controller- default /api/v1beta3/namespaces/default/pods/slaves-controller-ku9oc d67d9032-fe6e-11e4-bd80-42010af032d5 427 2015-05-19 21:34:32 +0000 UTC  map[name:slaves] map[kubernetes.io/created-by:{ http://kubernetes.io/created-by:{"kind":"SerializedReference","apiVersion":"v1beta3","reference":{"kind":"ReplicationController","namespace":"default","name":"slaves-controller","uid":"d67ae275-fe6e-11e4-bd80-42010af032d5","apiVersion":"v1beta3","resourceVersion":"424"}}]} {[{workspace {  0xc20824c270       }}] [{slave kubernetes/pause [] []  [] [] {map[] map[]} [{workspace false /data}]    /dev/termination-log Always 0xc2083e3980}] Always  ClusterFirst map[]
false} {
Pending []    []}}Node kubernetes-minion-7e8m: NoDiskConflictNode kubernetes-minion-w944: NoDiskConflictNode kubernetes-minion-shk4: NoDiskConflict
Tue, 19 May 2015 21:34:35 +0000   Tue, 19 May 2015 21:34:35 +0000 1   {scheduler }            failedScheduling    Error scheduling: failed to find fit for pod: &{{ } {slaves-controller-ku9oc slaves-controller- default /api/v1beta3/namespaces/default/pods/slaves-controller-ku9oc d67d9032-fe6e-11e4-bd80-42010af032d5 427 2015-05-19 21:34:32 +0000 UTC  map[name:slaves] map[kubernetes.io/created-by:{ http://kubernetes.io/created-by:{"kind":"SerializedReference","apiVersion":"v1beta3","reference":{"kind":"ReplicationController","namespace":"default","name":"slaves-controller","uid":"d67ae275-fe6e-11e4-bd80-42010af032d5","apiVersion":"v1beta3","resourceVersion":"424"}}]} {[{workspace {  0xc20816db90       }}] [{slave kubernetes/pause [] []  [] [] {map[] map[]} [{workspace false /data}]    /dev/termination-log Always 0xc208286620}] Always  ClusterFirst map[]
false} {
Pending []    []}}Node kubernetes-minion-shk4: NoDiskConflictNode kubernetes-minion-7e8m: NoDiskConflictNode kubernetes-minion-w944: NoDiskConflict
Tue, 19 May 2015 21:34:39 +0000   Tue, 19 May 2015 21:34:39 +0000 1   {scheduler }            failedScheduling    Error scheduling: failed to find fit for pod: &{{ } {slaves-controller-ku9oc slaves-controller- default /api/v1beta3/namespaces/default/pods/slaves-controller-ku9oc d67d9032-fe6e-11e4-bd80-42010af032d5 427 2015-05-19 21:34:32 +0000 UTC  map[name:slaves] map[kubernetes.io/created-by:{ http://kubernetes.io/created-by:{"kind":"SerializedReference","apiVersion":"v1beta3","reference":{"kind":"ReplicationController","namespace":"default","name":"slaves-controller","uid":"d67ae275-fe6e-11e4-bd80-42010af032d5","apiVersion":"v1beta3","resourceVersion":"424"}}]} {[{workspace {  0xc208277050       }}] [{slave kubernetes/pause [] []  [] [] {map[] map[]} [{workspace false /data}]    /dev/termination-log Always 0xc208269060}] Always  ClusterFirst map[]
false} {
Pending []    []}}Node kubernetes-minion-7e8m: NoDiskConflictNode kubernetes-minion-w944: NoDiskConflictNode kubernetes-minion-shk4: NoDiskConflict
Tue, 19 May 2015 21:34:47 +0000   Tue, 19 May 2015 21:34:47 +0000 1   {scheduler }            failedScheduling    Error scheduling: failed to find fit for pod: &{{ } {slaves-controller-ku9oc slaves-controller- default /api/v1beta3/namespaces/default/pods/slaves-controller-ku9oc d67d9032-fe6e-11e4-bd80-42010af032d5 427 2015-05-19 21:34:32 +0000 UTC  map[name:slaves] map[kubernetes.io/created-by:{ http://kubernetes.io/created-by:{"kind":"SerializedReference","apiVersion":"v1beta3","reference":{"kind":"ReplicationController","namespace":"default","name":"slaves-controller","uid":"d67ae275-fe6e-11e4-bd80-42010af032d5","apiVersion":"v1beta3","resourceVersion":"424"}}]} {[{workspace {  0xc20823b110       }}] [{slave kubernetes/pause [] []  [] [] {map[] map[]} [{workspace false /data}]    /dev/termination-log Always 0xc2081a2000}] Always  ClusterFirst map[]
false} {
Pending []    []}}Node kubernetes-minion-shk4: NoDiskConflictNode kubernetes-minion-7e8m: NoDiskConflictNode kubernetes-minion-w944: NoDiskConflict
Tue, 19 May 2015 21:35:03 +0000   Tue, 19 May 2015 21:35:03 +0000 1   {scheduler }            failedScheduling    Error scheduling: failed to find fit for pod: &{{ } {slaves-controller-ku9oc slaves-controller- default /api/v1beta3/namespaces/default/pods/slaves-controller-ku9oc d67d9032-fe6e-11e4-bd80-42010af032d5 427 2015-05-19 21:34:32 +0000 UTC  map[name:slaves] map[kubernetes.io/created-by:{ http://kubernetes.io/created-by:{"kind":"SerializedReference","apiVersion":"v1beta3","reference":{"kind":"ReplicationController","namespace":"default","name":"slaves-controller","uid":"d67ae275-fe6e-11e4-bd80-42010af032d5","apiVersion":"v1beta3","resourceVersion":"424"}}]} {[{workspace {  0xc2083fb7a0       }}] [{slave kubernetes/pause [] []  [] [] {map[] map[]} [{workspace false /data}]    /dev/termination-log Always 0xc208301c20}] Always  ClusterFirst map[]
false} {
Pending []    []}}Node kubernetes-minion-7e8m: NoDiskConflictNode kubernetes-minion-w944: NoDiskConflictNode kubernetes-minion-shk4: NoDiskConflict
Tue, 19 May 2015 21:35:35 +0000   Tue, 19 May 2015 21:35:35 +0000 1   {scheduler }            failedScheduling    Error scheduling: failed to find fit for pod: &{{ } {slaves-controller-ku9oc slaves-controller- default /api/v1beta3/namespaces/default/pods/slaves-controller-ku9oc d67d9032-fe6e-11e4-bd80-42010af032d5 427 2015-05-19 21:34:32 +0000 UTC  map[name:slaves] map[kubernetes.io/created-by:{ http://kubernetes.io/created-by:{"kind":"SerializedReference","apiVersion":"v1beta3","reference":{"kind":"ReplicationController","namespace":"default","name":"slaves-controller","uid":"d67ae275-fe6e-11e4-bd80-42010af032d5","apiVersion":"v1beta3","resourceVersion":"424"}}]} {[{workspace {  0xc20845d0e0       }}] [{slave kubernetes/pause [] []  [] [] {map[] map[]} [{workspace false /data}]    /dev/termination-log Always 0xc208457a80}] Always  ClusterFirst map[]
false} {
Pending []    []}}Node kubernetes-minion-shk4: NoDiskConflictNode kubernetes-minion-7e8m: NoDiskConflictNode kubernetes-minion-w944: NoDiskConflict
Tue, 19 May 2015 21:36:35 +0000   Tue, 19 May 2015 21:36:35 +0000 1   {scheduler }            failedScheduling    Error scheduling: failed to find fit for pod: &{{ } {slaves-controller-ku9oc slaves-controller- default /api/v1beta3/namespaces/default/pods/slaves-controller-ku9oc d67d9032-fe6e-11e4-bd80-42010af032d5 427 2015-05-19 21:34:32 +0000 UTC  map[name:slaves] map[kubernetes.io/created-by:{ http://kubernetes.io/created-by:{"kind":"SerializedReference","apiVersion":"v1beta3","reference":{"kind":"ReplicationController","namespace":"default","name":"slaves-controller","uid":"d67ae275-fe6e-11e4-bd80-42010af032d5","apiVersion":"v1beta3","resourceVersion":"424"}}]} {[{workspace {  0xc2083721e0       }}] [{slave kubernetes/pause [] []  [] [] {map[] map[]} [{workspace false /data}]    /dev/termination-log Always 0xc2083968e0}] Always  ClusterFirst map[]
false} {
Pending []    []}}Node kubernetes-minion-w944: NoDiskConflictNode kubernetes-minion-shk4: NoDiskConflictNode kubernetes-minion-7e8m: NoDiskConflict
Tue, 19 May 2015 21:36:36 +0000   Tue, 19 May 2015 21:36:36 +0000 1   {scheduler }            failedScheduling    Error scheduling: failed to find fit for pod: &{{ } {slaves-controller-ku9oc slaves-controller- default /api/v1beta3/namespaces/default/pods/slaves-controller-ku9oc d67d9032-fe6e-11e4-bd80-42010af032d5 427 2015-05-19 21:34:32 +0000 UTC  map[name:slaves] map[kubernetes.io/created-by:{ http://kubernetes.io/created-by:{"kind":"SerializedReference","apiVersion":"v1beta3","reference":{"kind":"ReplicationController","namespace":"default","name":"slaves-controller","uid":"d67ae275-fe6e-11e4-bd80-42010af032d5","apiVersion":"v1beta3","resourceVersion":"424"}}]} {[{workspace {  0xc208258690       }}] [{slave kubernetes/pause [] []  [] [] {map[] map[]} [{workspace false /data}]    /dev/termination-log Always 0xc20829a580}] Always  ClusterFirst map[]
false} {
Pending []    []}}Node kubernetes-minion-7e8m: NoDiskConflictNode kubernetes-minion-w944: NoDiskConflictNode kubernetes-minion-shk4: NoDiskConflict
Tue, 19 May 2015 21:36:38 +0000   Tue, 19 May 2015 21:36:38 +0000 1   {scheduler }            failedScheduling    Error scheduling: failed to find fit for pod: &{{ } {slaves-controller-ku9oc slaves-controller- default /api/v1beta3/namespaces/default/pods/slaves-controller-ku9oc d67d9032-fe6e-11e4-bd80-42010af032d5 427 2015-05-19 21:34:32 +0000 UTC  map[name:slaves] map[kubernetes.io/created-by:{ http://kubernetes.io/created-by:{"kind":"SerializedReference","apiVersion":"v1beta3","reference":{"kind":"ReplicationController","namespace":"default","name":"slaves-controller","uid":"d67ae275-fe6e-11e4-bd80-42010af032d5","apiVersion":"v1beta3","resourceVersion":"424"}}]} {[{workspace {  0xc2083d8ab0       }}] [{slave kubernetes/pause [] []  [] [] {map[] map[]} [{workspace false /data}]    /dev/termination-log Always 0xc208426120}] Always  ClusterFirst map[]
false} {
Pending []    []}}Node kubernetes-minion-w944: NoDiskConflictNode kubernetes-minion-shk4: NoDiskConflictNode kubernetes-minion-7e8m: NoDiskConflict
Tue, 19 May 2015 21:36:42 +0000   Tue, 19 May 2015 21:36:42 +0000 1   {scheduler }            failedScheduling    Error scheduling: failed to find fit for pod: &{{ } {slaves-controller-ku9oc slaves-controller- default /api/v1beta3/namespaces/default/pods/slaves-controller-ku9oc d67d9032-fe6e-11e4-bd80-42010af032d5 427 2015-05-19 21:34:32 +0000 UTC  map[name:slaves] map[kubernetes.io/created-by:{ http://kubernetes.io/created-by:{"kind":"SerializedReference","apiVersion":"v1beta3","reference":{"kind":"ReplicationController","namespace":"default","name":"slaves-controller","uid":"d67ae275-fe6e-11e4-bd80-42010af032d5","apiVersion":"v1beta3","resourceVersion":"424"}}]} {[{workspace {  0xc2082e0300       }}] [{slave kubernetes/pause [] []  [] [] {map[] map[]} [{workspace false /data}]    /dev/termination-log Always 0xc2082e2c60}] Always  ClusterFirst map[]
false} {
Pending []    []}}Node kubernetes-minion-7e8m: NoDiskConflictNode kubernetes-minion-w944: NoDiskConflictNode kubernetes-minion-shk4: NoDiskConflict
Tue, 19 May 2015 21:36:50 +0000   Tue, 19 May 2015 21:36:50 +0000 1   {scheduler }            failedScheduling    Error scheduling: failed to find fit for pod: &{{ } {slaves-controller-ku9oc slaves-controller- default /api/v1beta3/namespaces/default/pods/slaves-controller-ku9oc d67d9032-fe6e-11e4-bd80-42010af032d5 427 2015-05-19 21:34:32 +0000 UTC  map[name:slaves] map[kubernetes.io/created-by:{ http://kubernetes.io/created-by:{"kind":"SerializedReference","apiVersion":"v1beta3","reference":{"kind":"ReplicationController","namespace":"default","name":"slaves-controller","uid":"d67ae275-fe6e-11e4-bd80-42010af032d5","apiVersion":"v1beta3","resourceVersion":"424"}}]} {[{workspace {  0xc2083df7a0       }}] [{slave kubernetes/pause [] []  [] [] {map[] map[]} [{workspace false /data}]    /dev/termination-log Always 0xc2083e29c0}] Always  ClusterFirst map[]
false} {
Pending []    []}}Node kubernetes-minion-7e8m: NoDiskConflictNode kubernetes-minion-w944: NoDiskConflictNode kubernetes-minion-shk4: NoDiskConflict
Tue, 19 May 2015 21:37:06 +0000   Tue, 19 May 2015 21:37:06 +0000 1   {scheduler }            failedScheduling    Error scheduling: failed to find fit for pod: &{{ } {slaves-controller-ku9oc slaves-controller- default /api/v1beta3/namespaces/default/pods/slaves-controller-ku9oc d67d9032-fe6e-11e4-bd80-42010af032d5 427 2015-05-19 21:34:32 +0000 UTC  map[name:slaves] map[kubernetes.io/created-by:{ http://kubernetes.io/created-by:{"kind":"SerializedReference","apiVersion":"v1beta3","reference":{"kind":"ReplicationController","namespace":"default","name":"slaves-controller","uid":"d67ae275-fe6e-11e4-bd80-42010af032d5","apiVersion":"v1beta3","resourceVersion":"424"}}]} {[{workspace {  0xc208404360       }}] [{slave kubernetes/pause [] []  [] [] {map[] map[]} [{workspace false /data}]    /dev/termination-log Always 0xc208407220}] Always  ClusterFirst map[]
false} {
Pending []    []}}Node kubernetes-minion-7e8m: NoDiskConflictNode kubernetes-minion-w944: NoDiskConflictNode kubernetes-minion-shk4: NoDiskConflict
Tue, 19 May 2015 21:37:38 +0000   Tue, 19 May 2015 21:37:38 +0000 1   {scheduler }            failedScheduling    Error scheduling: failed to find fit for pod: &{{ } {slaves-controller-ku9oc slaves-controller- default /api/v1beta3/namespaces/default/pods/slaves-controller-ku9oc d67d9032-fe6e-11e4-bd80-42010af032d5 427 2015-05-19 21:34:32 +0000 UTC  map[name:slaves] map[kubernetes.io/created-by:{ http://kubernetes.io/created-by:{"kind":"SerializedReference","apiVersion":"v1beta3","reference":{"kind":"ReplicationController","namespace":"default","name":"slaves-controller","uid":"d67ae275-fe6e-11e4-bd80-42010af032d5","apiVersion":"v1beta3","resourceVersion":"424"}}]} {[{workspace {  0xc208464870       }}] [{slave kubernetes/pause [] []  [] [] {map[] map[]} [{workspace false /data}]    /dev/termination-log Always 0xc2084688a0}] Always  ClusterFirst map[]
false} {
Pending []    []}}Node kubernetes-minion-7e8m: NoDiskConflictNode kubernetes-minion-w944: NoDiskConflictNode kubernetes-minion-shk4: NoDiskConflict
—
Reply to this email directly or view it on GitHub
https://github.com/GoogleCloudPlatform/kubernetes/issues/8478#issuecomment-103675211
.

Yes, that works fine.  So perhaps this is specific to replication controllers?

I'll try that.
On Tue, May 19, 2015 at 3:21 PM, runningwild<EMAIL_ADDRESS>wrote:

Yes, that works fine. So perhaps this is specific to replication
controllers?
—
Reply to this email directly or view it on GitHub
https://github.com/GoogleCloudPlatform/kubernetes/issues/8478#issuecomment-103683122
.

I still made it work.
apiVersion: v1beta3
kind: ReplicationController
metadata:
labels:
name: thtest
name: thtest
namespace: default
spec:
replicas: 3
selector:
name: thtest
template:
metadata:
generateName: thtest-
labels:
name: thtest
namespace: default
spec:
containers:
- command:
- "sleep"
- "1000"
image: busybox
name: sleep
volumeMounts:
- mountPath: /pd
name: pd
host: kubernetes-minion-jrlj
volumes:
- name: pd
gcePersistentDisk:
pdName: testssd
fsType: ext4
readOnly: true
On Tue, May 19, 2015 at 3:22 PM, Tim Hockin<EMAIL_ADDRESS>wrote:

I'll try that.
On Tue, May 19, 2015 at 3:21 PM, runningwild<EMAIL_ADDRESS>wrote:

Yes, that works fine. So perhaps this is specific to replication
controllers?
—
Reply to this email directly or view it on GitHub
https://github.com/GoogleCloudPlatform/kubernetes/issues/8478#issuecomment-103683122
.

Works for me too.  But this doesn't:

Take the first file you showed (after piping it through sed s/thtest/foobar/g and call it master.yaml.
Take the second file you showed, remove the host line, and call it slave.yaml.
kubectl create -f master.yaml
kubectl create -f slave.yaml

Summary: A replication controller won't choose a machine to run on if another pod has already mounted the disk it needs, unless it is told specifically what machine to use.
That doesn't seem like a clean summary, but that's what I'm seeing.

Ahh, maybe it's the scheduling part that we're dodging by manually assigning a host?
@davidopp

I can take a look. I'm not aware of a scheduling rule that prevents pods that mount the same PD from running on the same node, yet that seems like the only explanation based on what you guys observed.

Very sorry for the delay. There is in fact a scheduling rule that explains the behavior you're seeing. See the function NoDiskConflict here: https://github.com/GoogleCloudPlatform/kubernetes/blob/master/plugin/pkg/scheduler/algorithm/predicates/predicates.go#L84
The comment is:
// NoDiskConflict evaluates if a pod can fit due to the volumes it requests, and those that
// are already mounted. Some times of volumes are mounted onto node machines.  For now, these mounts
// are exclusive so if there is already a volume mounted on that node, another pod can't schedule
// there. This is GCE specific for now.

I'm going to close this issue since it is working as intended. Please reopen if you have additional questions.

Can we re-purpose this bug to mean "this should work for read-only PD
mounts" ?
On Sun, May 31, 2015 at 1:25 PM, David Oppenheimer<EMAIL_ADDRESS>
wrote:

Very sorry for the delay. There is in fact a scheduling rule that explains
the behavior you're seeing. See the function NoDiskConflict here:
https://github.com/GoogleCloudPlatform/kubernetes/blob/master/plugin/pkg/scheduler/algorithm/predicates/predicates.go#L84
The comment is:
// NoDiskConflict evaluates if a pod can fit due to the volumes it requests, and those that
// are already mounted. Some times of volumes are mounted onto node machines.  For now, these mounts
// are exclusive so if there is already a volume mounted on that node, another pod can't schedule
// there. This is GCE specific for now.
I'm going to close this issue since it is working as intended. Please
reopen if you have additional questions.
—
Reply to this email directly or view it on GitHub
https://github.com/GoogleCloudPlatform/kubernetes/issues/8478#issuecomment-107241652
.

Yeah, that sounds reasonable. I'll rename.

Made PR #9056 which prevents a disk conflict if both requested volumes are in read only mode.
As a side note: I comically now have the problem that slaves sometimes schedule on the same machine, is there a recommended way to avoid that?

Right now the only way to avoid having two pods schedule onto the same machine is to have them each request enough resources such that they won't fit on the same machine. See #3945 for more details.
Thanks for your PR!


Adding automated linting check for black

Fixes #285
Proposed Changes

automated code linting added

Checklist

[x] I have read the CONTRIBUTING guide
[x] My PR is based from the current GaNDLF master
[x] Non-breaking change (would not break existing functionality): please provide as many details as possible for any breaking change
[x] Function/class source code documentation added/updated
[x] Code has been blacked for style consistency
[x] If applicable, version information has been updated in GANDLF/version.py
[x] If adding a submodule, add to list of exceptions for black styling in pyproject.toml file
[x] Usage documentation has been updated, if appropriate
[x] History has been updated, if appropriate
[x] Tests added or modified to cover the changes; if coverage is reduced, please give explanation

Once this gets merged, the Lint/black check will become a required check to pass.


IIS Basic Auth vs. Git using PAT information is misleading

The information makes it look like the base64 encoding approach is only needed if Basic Auth is enabled. IME Git does not work with plain PATs in general for the on-prem (that is Azure DevOps Server) scenario, as Windows Auth prevents the use of PATs as well. So this page should be updated to reflect the fact that the extraheader must be used for all Azure DevOps Server installations.

Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: 71fa3b01-218c-9a5f-5b71-affdf65c945c
Version Independent ID: 7c414686-f52d-51ce-87e1-794deade8506
Content: IIS Basic Authentication invalidates using PATs - Azure DevOps
Content Source: docs/integrate/get-started/authentication/iis-basic-auth.md
Product: devops
Technology: devops-ecosystem
GitHub Login: @chcomley
Microsoft Alias: chcomley

see also https://docs.microsoft.com/en-us/azure/devops/user-guide/about-azure-devops-services-tfs?view=azure-devops-2020#authentication

see also https://docs.microsoft.com/en-us/azure/devops/user-guide/about-azure-devops-services-tfs?view=azure-devops-2020#authentication

related: #8890

related: #8890

I've just published an update, thanks so much for your feedback! Once it's live, this issue will automatically close.


fix: overflowing code editor

Description
(fixes: https://github.com/usebruno/bruno/issues/693)
This PR fixes the overflow issue by forcing line breaks through CSS:

Before
After

Contribution Checklist:

[x] The pull request only addresses one issue or adds one feature.
[x] The pull request does not introduce any breaking changes
[x] I have added screenshots or gifs to help explain the change if applicable.
[x] I have read the contribution guidelines.
[x] Create an issue and link to the pull request.

Thanks for taking care of this @janmonschke !
Merged!!


It crashes when no table is found

Make it skip these files instead and just output a message about it

Should be fixed


Add inshellisense

https://github.com/microsoft/inshellisense

This will require adding node.
Let's see if we can add this with only the runtime remaining.


SNOW-912320: The behavior of save_as_table(mode='overwrite') is inconsistent between v1.5.1 and v1.6.1

What version of Python are you using?
3.8.17 (default, Jul  5 2023, 20:35:26) [GCC 11.2.0](python worksheet in snowflake console)

What operating system and processor architecture are you using?
Linux-5.4.181-99.354.amzn2.aarch64-aarch64-with-glibc2.17 (python worksheet in snowflake console)

What are the component versions in the environment (pip freeze)?
tested in python worksheet in snowflake console only with snowflake-snowpark-python dependency(anaconda)

What did you do?
Run below python worksheet with snowflake-snowpark-python==1.5.1 and snowflake-snowpark-python==1.6.1 and see the result is inconsistent.

# The Snowpark package is required for Python Worksheets.
# You can add more packages by selecting them using the Packages control and then importing them.

import snowflake.snowpark as snowpark
from snowflake.snowpark.functions import col, lit
from snowflake.snowpark.types import LongType

def main(session: snowpark.Session) -> snowpark.DataFrame:
    TABLE_NAME = "_TEST"
    # clean the table first
    session.sql(f"DROP TABLE IF EXISTS {TABLE_NAME}").collect()

    # create table with dataframe
    df = session.create_dataframe([1,2]).to_df(["a"])
    df.write.save_as_table(TABLE_NAME)

    # adding column 'b' as LongType() with NULL values
    # note: lit(None) infers its datatype with StringType().
    #       So, adding dummy_column with None value first
    #       and then cast it to LongType()
    tbl = session.table(TABLE_NAME).select('*')
    tbl = tbl.with_column('b_none', lit(None))
    tbl = tbl.with_column('b', col('b_none').astype(LongType()))
    tbl = tbl.drop('b_none')

    # overwrite it
    tbl.write.save_as_table(TABLE_NAME, column_order='name', mode='overwrite')

    # The output of snowflake-snowpark-python v1.5.1:
    # --------------
    # |"A"  |"B"   |
    # --------------
    # |1    |NULL  |
    # |2    |NULL  |
    # --------------
    #
    # The output of snowflake-snowpark-python v1.6.1:
    # It expects to be the same with v1.5.1
    # -------------
    # |"A"  |"B"  |
    # -------------
    # |     |     |
    # -------------
    return session.table(TABLE_NAME).select('*')

What did you expect to see?
consistent results between 1.5.1 and 1.6.1

Can you set logging to DEBUG and collect the logs?
I could not extract log in python worksheet in snowflake console. sorry.

There was a behavior change with version 1.6.1 where if the schema of the dataframe (either inferred or explicitly defined) is non-nullable, then we don't input NULL columns into table using save_as_table.
https://github.com/snowflakedb/snowpark-python/releases/tag/v1.6.1. As a part of this behavior change, save_as_table now creates table using a 2-step process, 1. create or replace table, and 2. insert into table.
When you are overwriting into the same database name, create or replace table overwrites the source data from column A which gives you an empty table as a result. Can you trying overwriting it into a different table name?


Honor dependencies found in PATH for new installs

Verification

[X] This issue's title and/or description do not reference a single formula e.g. brew install wget. If they do, open an issue at https://github.com/Homebrew/homebrew-core/issues/new/choose instead.

Provide a detailed description of the proposed feature
When installing a formula, homebrew does not currently honor PATH for finding dependencies. This results in dependency clobbering where-in if I have installed something already (outside of brew), the homebrew version may override the version I have installed elsewhere.
What is the motivation for the feature?
This can lead to improper or unexpected functionality if the dependency version installed by brew operates differently than the one installed via other means.
Example is with any formula that has a dependency on node. I use nvm to manage node versions; however, any time I install or upgrade Homebrew formulae that depend on node, I get the brew version installed and it clobbers the nvm managed version.
How will the feature be relevant to at least 90% of Homebrew users?
Adding this feature reduces un-necessary resource waste by not installing a dependency that is otherwise already satisfied. This means less time to install the formula, less space required to install the formula, and no additional downloads of un-necessary 3rd party packages.
What alternatives to the feature have been considered?
The only other alternative is to know beforehand what dependencies your packages need and to use --ignore-dependencies which is not ideal as it ignores all dependencies, not just the ones you may already be providing.
Another alternative is to use brew unlink <formula>, but this isn't ideal because it doesn't do anything to save on resource utilization by not installing an un-necessary (and duplicate) dependency in the first place.

I get the brew version installed and it clobbers the nvm managed version.

It doesn't. This is an issue with how you've configured your PATH. If you want the nvm managed version to take priority: you need to ensure it's earlier in your PATH than Homebrew is.

Adding this feature reduces un-necessary resource waste by not installing a dependency that is otherwise already satisfied.

I'm afraid it is not unnecessary and not satisfied. Note: this is how (almost) all package managers work.

Note: this is how (almost) all package managers work.

This is the worse reason NOT to fix something, ever. Just because its how everyone else does it, doesn't mean you can't strive to do better.
Giving some option for users to block a dependency from being installed should be easy.

It doesn't. This is an issue with how you've configured your PATH. If you want the nvm managed version to take priority: you need to ensure it's earlier in your PATH than Homebrew is.

My issue is not isolated, there are plenty of other users with the exact same issue, as a simple google search will prove.
By default, if you use Brew to install nvm then you use nvm to install node, the nvm bin for node will fall later in PATH than other homebrew installed formula.
Therefore, without making any changes, if I use brew to install nvm, nvm to install node and then brew to install some other formula that deps on node, the brew version of node will override the nvm installed version. I shouldn't have to manually muck with my PATH to solve for that scenario.
Either do a simple check for the formula's binary, it isn't that hard, or give a way to control a block list of formulae that should never be installed as a dependency. Hell, even restoring the --no-node/--without-node functionality would be better.

I'm afraid it is not unnecessary and not satisfied.

It is, if I have node already installed, a simple check for version can prove the dep to be satisfied and brew installing it again in a different location is 100% un-necessary. It wastes time, it wastes disk space, ie un-necessary.
Not sure why you need to place the onus of solving a potential technical blocker on the consumer with the assumption that it is their mis-configuration that causes the issue.

@billyjbryant Somehow you repeatedly state how easy the problem is to solve but are unable to solve it yourself. There is more information that could help you here but I am no longer inclined to do so. Adjust your patronising, rude tone in future and you may get better results.


Join twitch channels without sending a message

It should be possible to join a twitch chat without sending a message to inform everyone of the join action.

Will do that once everything is implemented

Perfect.


Skip VM related parts for TestTraffic

Add test input config argument to disable VM related parts in
TestTraffic.
Skip all the VM related parts based on the input argument.

[ ] Configuration Infrastructure
[ ] Docs
[ ] Installation
[ ] Networking
[ ] Performance and Scalability
[ ] Policies and Telemetry
[ ] Security
[X] Test and Release
[ ] User Experience
[ ] Developer Infrastructure
Pull Request Attributes
Please check any characteristics that apply to this pull request.
[ ] Does not have any changes that may affect Istio users.

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

Test name
Commit
Details
Rerun command

release-notes_istio
7511d5177b0af81a3307667fde851980128ec997
link
/test release-notes_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.

/test release-notes_istio

In response to a cherrypick label: #28729 failed to apply on top of branch "release-1.8":
Applying: Skip VM related parts for TestTraffic
Using index info to reconstruct a base tree...
M	tests/integration/README.md
M	tests/integration/pilot/common/apps.go
M	tests/integration/pilot/common/routing.go
M	tests/integration/pilot/common/traffic.go
Falling back to patching base and 3-way merge...
Auto-merging tests/integration/pilot/common/traffic.go
CONFLICT (content): Merge conflict in tests/integration/pilot/common/traffic.go
Auto-merging tests/integration/pilot/common/routing.go
Auto-merging tests/integration/pilot/common/apps.go
CONFLICT (content): Merge conflict in tests/integration/pilot/common/apps.go
Auto-merging tests/integration/README.md
error: Failed to merge in the changes.
hint: Use 'git am --show-current-patch=diff' to see the failed patch
Patch failed at 0001 Skip VM related parts for TestTraffic
When you have resolved this problem, run "git am --continue".
If you prefer to skip this patch, run "git am --skip" instead.
To restore the original branch and stop patching, run "git am --abort".

In response to a cherrypick label: new issue created for failed cherrypick: #29459


Rust: Too many boxes

The Rust backend generates too many boxes.
It generates things like Box<Option<Box<ChiangMaiGoose>>> where it should only be Option<ChiangMaiGoose.
An Option needn't be boxed. And I don't think that an enum needs to be boxed either. (ChiangMaiGoose is an enum in this case.)

Could you help to provide an example of an input file that causes this situation ?


Update of channel NITRO (known before as RTL Nitro)

RTL Nitro was renamed to NITRO, so timezones file has to be updated to apply correct timezone.
2018-12-30 00:07:02 ThreadPoolExecutor-0_2 :: [abc6aab] Missing time zone for network: NITRO. Check valid network is set in indexer (theTVDB) before filing issue.

You need to leave the old names in there also ^^


If pyroe encounters an error, simpleaf prevents debugging by swallowing stderr

Description
In the event that pyroe does not return cleanly, simpleaf prints an error notifying the source of the problem, but little else to help debug the error:
found `salmon` in the PATH at /usr/local/bin/salmon
found `alevin-fry` in the PATH at /usr/local/bin/alevin-fry
found `pyroe` in the PATH at /usr/local/bin/pyroe
Error: pyroe failed to return succesfully ExitStatus(unix_wait_status(256))

Recommendations/Requests
When the pyroe error is caught, perhaps it would be helpful if simpleaf printed two extra pieces of information:

It would be helpful to have the pyroe command that was run
It would be helpful to have the stderr and stdout of the pyroe command printed before or after the error to help debugging.

I think that the Debug implementation of std::process::Command will print the full command, which makes request #1 a bit easier.
The stderr/out can be pulled from cres.stderr
Relevant lines:
https://github.com/COMBINE-lab/simpleaf/blob/50db027cd84b07711e26cddb6cf3940e2e620656/src/main.rs#L519-L524

@DongzeHE ☝🏻 we could work this into the upcoming release.

Sure! I will work on this today.

You beat me to it! I was looking forward to writing some more Rust :D
I'm running into the same coy behaviour from simpleaf when generate-permit-list fails:
https://github.com/COMBINE-lab/simpleaf/blob/50db027cd84b07711e26cddb6cf3940e2e620656/src/main.rs#L901-L906

Ok, just pushed 44fb9cb that works toward addressing this. The idea is to create a more verbose general function that does the actual command execution and has the appropriately verbose behavior in the event of a failure. The commit message describes the current behavior, which should satisfy the initial desired output.  Moving forward, we can expand / enhance logging through this function (e.g. if we want to log failed stdout/stderr to a file log as well, etc.).

Thanks Rob! This will surely be helpful to other users, as I'm sure I won't be the only person with odd-looking input data. The utility function seems absolutely the correct idea.
As a small measure of thanks (and a shameless excuse to right some rust), I've submitted https://github.com/COMBINE-lab/simpleaf/pull/44 that contains some humbly offered suggestions, but feel free to reject it if don't like the syntax changes. The spelling fix is probably worth keeping though, but that can be quickly fixed yourself if you reject the PR.

These changes have been incorporated and improved propagation of errors upstream in pyroe has also been incorporated as of v0.8.0 — which is pending release in bioconda now as well.  So, I'm going to close this issue, but please feel free to open another if you notice anything else related to this.
Currently, the plan is to cut the new simpleaf release this afternoon, which will incorporate all of these changes.


2bit Packing logic post Bit Balance Strategy

I want some more understanding on how to pack the 2 bit weights after using bit balance strategy.
While running blockwise quantization we have increased our range from 4 to 5 and values to {-2,-1,0,1,2}. After running the ABQ LLM for 2 bit, I will be having float weights which are good to quantize to 2 bits, but the problem here is with the packing logic.

How to represent the above range using 2 bits and pack them ?
If we use default 2 bit quantization, won't I lose the benefit of bit balance strategy ?

After 2-bit balancing is done, the W3Ax kernel needs to be called for acceleration. Although the bit balancing strategy means that the weight will be degraded by one bit, ABQ's innovative Kernel implementation ensures the linearity of the acceleration gain, which means that the speed will only be slightly degraded.

Ok, got it.

What about the size of the model ? After 2 bit balancing is done, we save the weights in 3 bits? Which means the new 2 bit balance quantized model will be of same size as 3bit quantized model?

yes,the simplest way is to store it directly in 3 bits
-----原始邮件-----
发件人:"Durga Sai Krishna Gundimeda" @.>
发送时间:2024-09-11 16:18:20 (星期三)
收件人: bytedance/ABQ-LLM @.>
抄送: lswzjuer @.>, Comment @.>
主题: Re: [bytedance/ABQ-LLM] 2bit Packing logic post Bit Balance Strategy (Issue #4)
Ok, got it.
What about the size of the model ? After 2 bit balancing is done, we save the weights in 3 bits? Which means the new 2 bit balance quantized model will be of same size as 3bit quantized model?
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you commented.Message ID: @.***>


CSS : Correct html element when Django serves tarot_key.html template

The html element's background property value of black is required in style.css static file. In its current state, there is a glitch apparent which you can see when Django serves tarot_key.html template in the image copied below. The yellow arrow is pointing to the  body’s linear gradient which is cut off abruptly. This needs to be corrected so that the linear gradient continues seamlessly while maintaining the html element background property value of black.

I noticed that the black bar and gradient distortion is still an issue but only at narrower mobile resolutions. I am re-opening this issue. It  was part of the last work order but I will add it a separate, new milestone for the next project.
See here:


Question: How is cache configured in test_access_attempts_config.py?

While crafting a test/fix for #299, discover something unusual about the test case:
In test_access_attempts_config.py:
    def test_lockout_by_ip_allows_when_same_user_diff_ip_without_cache(self):
        # User 1 is locked out from IP 1.
        self._lockout_user1_from_ip1()

        # User 1 can still login from IP 2.
        response = self._login(
            self.USER_1,
            self.VALID_PASSWORD,
            ip_addr=self.IP_2
        )
        self.assertEqual(response.status_code, self.ALLOWED)

    def test_lockout_by_ip_allows_when_same_user_diff_ip_using_cache(self):
        # User 1 is locked out from IP 1.
        self._lockout_user1_from_ip1()

        # User 1 can still login from IP 2.
        response = self._login(
            self.USER_1,
            self.VALID_PASSWORD,
            ip_addr=self.IP_2
        )
        self.assertEqual(response.status_code, self.ALLOWED)

Other than the name of the test, the test cases appears to be identical. How does the test initialize|reset|enable|disable cache? I am sure there is a perfectly reasonable explanation and I am simply missing something obvious. 😅
Thanks!

Another example:
    @override_settings(AXES_ONLY_USER_FAILURES=True)
    def test_lockout_by_user_with_empty_username_allows_other_users_without_cache(
        self, cache_get_mock=None, cache_set_mock=None
    ):
        # User with empty username is locked out from IP 1.
        self._lockout_user_from_ip(username='', ip_addr=self.IP_1)

        # Still possible to access the login page
        response = self.client.get(reverse('admin:login'), REMOTE_ADDR=self.IP_1)
        self.assertContains(response, self.LOGIN_FORM_KEY, status_code=200)

Typically, one would use @patch(...) decorator to create the mock objects, but it's absent from the tests 🤔💭


EmptyViewHelper - Empty view is always shown for a few milliseconds after start

I use the EmptyViewHelper and it is working good except that it is shown for a few milliseconds before the data will be displayed.
How can I prevent this or is this "works as designed"?
It should be a white screen if it is loading and after loading show the empty view or the list.

Fixed it by myself.
If you set the emptyView in the layout to alpha=0.0 it is hidden at start.
The EmptyViewHelper set the alpha=1 if no data otherwise it will set alpha=0!

@chrisonline yes, it must start with android:alpha="0.0" and also I fixed the flashing in the beta4. I use the alpha animation to fade it in/out, which is nicer to see.


Adds RDS stats to MySQL db application dashboards

We've added the stats for Postgres applications 1, this now does the
same for MySQL apps.
Added RDS link, e.g Whitehall

Link destination

Trello:
https://trello.com/c/VWpD8SvY/55-remove-mysql-primary-and-mysql-standby-infrastructure-and-configuration

Thanks for the review @ChrisBAshton and good spot on the link!


[Bug] Headers don't get passed on requests on orthanc dicom-web.

Describe the Bug
We are using OHIF's DICOM viewer as an iframe within our application. Everything is functioning correctly, however, our Orthanc instance is secured with email and password login. We have a basic token which should be passed in the Authorization header for authentication, but I'm having trouble passing this token in the request.
I asked about this issue on Slack and was advised to incorporate the Authorization header in the following places:
1.	The initWadoImageLoader's beforeSend hook.
2.	The getAuthorizationHeader function in extensions/default/src/DicomWebDataSource/index.js.
Despite hardcoding the token, the header is not being passed into the request.
Steps to Reproduce

Embed OHIF's DICOM viewer as an iframe in a parent application.
Protect the Orthanc instance with email/password authentication.
Attempt to pass the Authorization header using the initWadoImageLoader's beforeSend hook and the getAuthorizationHeader function in extensions/default/src/DicomWebDataSource/index.js.

The current behavior
The Authorization header is not being included in the requests.
The expected behavior
The Authorization header containing the basic authentication token should be passed with the requests to the Orthanc instance.
OS
MacOS 15.0(beta)
Node version
v21.7.3
Browser
Arc Browser for MacOS v1.54.0(52220)

Issue: Bearer Token Not Sent for First Frame API Request in DCM4CHEE
I am passing a Bearer token in two places within the OHIF codebase to authenticate API requests, but the token is not being sent when retrieving the first frame. As a result, the UI breaks. However, for all other API requests, the Bearer token is being sent successfully.
Details:
In extensions/default/src/DicomWebDataSource/index.js:
getAuthorizationHeader = () => {
const xhrRequestHeaders = {};
const authHeaders = userAuthenticationService.getAuthorizationHeader();
if (authHeaders && authHeaders.Authorization) {
xhrRequestHeaders.Authorization = authHeaders.Authorization;
}
xhrRequestHeaders.Authorization = Bearer ${dcm_token};
return xhrRequestHeaders;
};
In initWADOImageLoader:
beforeSend: function (xhr) {
const dcm_token = sessionStorage.getItem('dcm4chee_token');
const sourceConfig = extensionManager.getActiveDataSource()?.[0].getConfig() ?? {};
const headers = userAuthenticationService.getAuthorizationHeader();
const acceptHeader = utils.generateAcceptHeader(
sourceConfig.acceptHeader,
sourceConfig.requestTransferSyntaxUID,
sourceConfig.omitQuotationForMultipartRequest
);
const xhrRequestHeaders = {
Accept: acceptHeader,
};
if (dcm_token) {
xhrRequestHeaders.Authorization = Bearer ${dcm_token};
}
if (headers) {
Object.assign(xhrRequestHeaders, headers);
}
return xhrRequestHeaders;
}
Problem: For the API request to retrieve the first frame, the Bearer token is not being sent, causing the UI to break. For all other subsequent API requests, the Bearer token is correctly included, and the APIs function as expected.
I suspect the issue is related to how the beforeSend logic is handled for the first frame, but I'm unsure how to resolve it. Any guidance or suggestions would be appreciated.

Can you check the latest OHIF viewer, which now includes Cornerstone 3D 2.0?
Here are the migration guides:
Try OHIF locally: https://viewer-dev.ohif.org/localbasicTry Cornerstone3D 2.0 locally: https://www.cornerstonejs.org/live-examples/local.html
https://docs.ohif.org/migration-guide/3p8-to-3p9/


Different schema for each sql editor

System information:

Operating system (distribution) and version: Windows 10 64 bit
DBeaver version: 6.0.4
Java version 1.8.0_211
Additional extensions: None

Connection specification:

Database name and version: PostgreSQL 9.6.10 on x86_64
Driver name: org.postgresql.Driver
Do you use tunnels or proxies (SSH, SOCKS, etc)? No

Describe the problem you're observing:
I want to have two SQL Editor windows open with queries for the same PostgreSQL DB but targeting different schemas.
When I change the active schema on one SQL Editor window the other windows associated to the same DB also change the active schema.
Steps to reproduce, if exist:
See above
Include any warning/errors/backtraces from the logs
N/A

already implemented


Inviting bot not joining server

Hi! I've tried to invite the bot several times but it doesn't show up on the server.
Is the bot still working?

👋 Once you've invited the bot, the commands should be available in the message box of each channel -- type / to access them. The bot won't show up in the members' list as it is not a member of the server, you're just inviting the application to make the commands available.

It wasn't working for the first minutes, but now i'm able to use the commands. Thanks!

Sounds like this is resolved, closing.


The manifest generated for the 'google-fonts' chunk points to an invalid JS file

My configuration pushes the following files to the public/directory:

woff.css
woff2.css

The manifest file generated contains the following links:
"google-fonts.js": "/1.main.js",
"google-fonts.css": "/woff2.css",
So my query is, why does the plugin only reference the woff2 version in the manifest, and where is this 1.main.js file coming from? It certainly doesn't exist in the filesystem, and trying to interpret it as an entry point just reports "File not found".

Hey! I'm sorry you're having issues. Can you please provide example configuration and packages that leads to your issue?

Hey! This issue should now be resolved in version 5.0.0! 🚀 See release notes and readme for more information.