Chenxi Pan
11/21/2025, 9:35 AMlong gu
11/28/2025, 9:13 AMGiridhar Pathak
12/02/2025, 10:19 PMwith_prompts.with_column("coding_classification", prompt(
messages=col("prompts"),
provider=papyrus_provider,
model="o3",
return_format=CodingClassification,
udf_options=UDFOptions(concurrency=3, on_error="raise")
))
the run seems to just hang. with 0 rows out. no metrics or anything.
cant seem to get any visibility or logs around whats going on. any direction on other ways of managing concurrency for the prompt(..) AI function?Srinivas Lade
12/05/2025, 9:34 PMJohn Rahmon
12/19/2025, 8:59 AMdagster pipes to manage communication of metadata between dagster and other external services, so alot of the plumbing to bring in logs from other services is already in place.
While Daft provides a really clean log at runtime in the CLI, accessing this info programmatically (ie; via an API) during the actual run remains difficult (and seems not possible yet based on the public forums ive been reading through)
If anyone has come across a similar issue and has any useful insights on how we can access runtime logs / progress bars, please feel free to share or comment here!Garrett Weaver
02/12/2026, 10:18 PM_partition_fields_to_pyiceberg_spec sets the name to the same name as the source field.
source_field = iceberg_schema.find_field(pf.field.name)
iceberg_partition_fields.append(
PyIcebergPartitionField(
source_id=source_field.field_id,
field_id=1000 + idx,
transform=transform,
name=pf.field.name,
)
)
we could (1) try to create a unique name automatically or (2) allow user to pass the name.Garrett Weaver
02/13/2026, 9:02 PMGiridhar Pathak
02/17/2026, 4:51 AMBruno Alano
02/17/2026, 8:45 PMGarrett Weaver
02/20/2026, 11:15 PMAbner Ayala
03/11/2026, 8:40 PM0.6.8.
The code works in 1 gpu but when I increase the number of GPUs is still take the same amount of time and I only see 1 GPU busy in my ray cluster.
My current setup is I have 1 head node and 4 gpu-worker node. Each gpu worker is a kuberay pod that has 4 GPUs (using A10G GPUs). I tested with 1 GPU and getting 40ish minutes.
I tested with 8 GPUs (2 nodes) and its still 40ish minutes.
Seems like it is using only 1 GPU even when I tell it to use eight.
Note: the node has 16 gpus total and 4 gpus nodes. I also see a swordfish actor created for the nodes even if I only select 8 gpus instead which should only need 2 nodes technically...Abhijeet Patil
03/16/2026, 5:08 PMAbhijeet Patil
03/22/2026, 4:01 PMAbhijeet Patil
03/24/2026, 5:45 PMdaft.DataType.decimal128(38, 20) after reading from mysql. If distributed delta merge using deltalake fails on a worker due to delta contention, I am doing retries (I am not using dynamodb as lock provider).
Is there a known issue with datatype decimal(38, 20) and how to avoid it? Please let me know if additional details are required.Abner Ayala
03/25/2026, 9:37 PMclass SimpleModel:
def __init__(self, model_checkpoint_uri: str):
self.device = torch.device("cuda" if torch.cuda.is_available() else "cpu")
self.model = load_model(model_uri).to(self.device)
self.model.eval()
def predict(self, images):
if len(images) == 0:
return []
images_tensor = torch.from_numpy(np.array(images.to_pylist())).to(self.device)
batch_size = images_tensor.shape[0]
with torch.inference_mode():
probabilities, features = self.model(images_tensor)
features = features.half().detach().cpu().numpy().tolist()
rounded_probabilities = probabilities.round(decimals=4).detach().cpu().numpy().tolist()
predicted_class_id = probabilities.argmax(dim=1).detach().cpu().tolist()
predicted_class_name = [CLASSES[p] for p in predicted_class_id]
predictions = []
for i in range(batch_size):
prediction = json.dumps({
"class_id": predicted_class_id[i],
"class_name": predicted_class_name[i],
"probability": rounded_probabilities[i],
})
predictions.append(prediction)
return predictions, features
During Runtime: Not working
ModelClass = daft.cls(EyesClosedClassifier, gpus=1, max_concurrency=cfg.num_gpus)
model = ModelClass(model_checkpoint_uri=cfg.pipeline.model.checkpoint_uri)
model_inference = daft.method.batch(
model.predict,
return_dtype=daft.DataType.struct({
"predictions": daft.DataType.string(),
"features": daft.DataType.list(daft.DataType.float32()),
}),
unnest=True,
batch_size=cfg.batch_size,
)Abner Ayala
03/30/2026, 8:45 PMPanicException: Tried to get unmaterialized statsRuthvik
04/06/2026, 9:42 AMGarrett Weaver
04/27/2026, 8:37 PMlist(str)? I somewhat prefer the explicit handling by users over hiding some details, but curious on thoughts.Mehul Batra
05/06/2026, 8:33 AMGravitinoGvfs local filesystem writes in v0.7.10 (@qingfeng-occ). Their pattern Lance as storage, Ray as runtime, Daft hardening the client layer is close to our target architecture. If anyone from that team or others running a similar stack is in this Slack, I'd love to connect.
2. Flotilla vs set_runner_ray() β current recommendation for DOKS
We're open-source-only. Is the Flotilla native K8s path production-ready today for a team that can't fall back to Daft Cloud? Or is the practical answer still set_runner_ray() + KubeRay for anything serious? Any known stability cliffs under sustained load?
3. Checkpointing roadmap for Lance/Iceberg sinks
daft-checkpoint scaffolding landed in v0.7.6 β great signal. Our write path is Lance + Iceberg + OpenSearch, and the current Parquet-only limitation means we'd still need external idempotency for v1 regardless. Is Lance/Iceberg write support on the near-term checkpoint roadmap, or is that explicitly out of scope for now?
We'd plan to contribute back when things fall in place. Happy to share our UC matrix and PoC findings once we're further along.Desmond Cheong
05/14/2026, 4:32 PMεε
06/04/2026, 5:01 PMεε
06/05/2026, 4:59 AMεε
06/05/2026, 9:54 PMdaft-lance to enable high-throughput parallel writes. thanks a lot!!Abhijeet Patil
06/09/2026, 5:23 PMεε
06/13/2026, 5:10 AMAbhijeet Patil
07/02/2026, 6:12 PMAbhijeet Patil
07/10/2026, 5:47 PMAbhijeet Patil
07/13/2026, 10:13 AMSatyendra Kumar
07/13/2026, 10:21 AMAbhijeet Patil
07/17/2026, 3:33 PM