Documentation
¶
Overview ¶
Package serial provides utilities for serializing render operations.
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func RenderFunc ¶
func RenderFunc( renderFunc func(context.Context, logging.Logger, render.Inputs) (render.Outputs, error), mu *sync.Mutex, ) func(context.Context, logging.Logger, render.Inputs) (render.Outputs, error)
RenderFunc wraps a render function to serialize all render calls using the provided mutex. This prevents concurrent Docker container operations that can overwhelm the Docker daemon when processing many XRs with the same functions. The serialization ensures:
- Only one render operation runs at a time globally
- Named Docker containers (via annotations) can be reused safely between renders
- Container startup races are eliminated
For e2e tests, combine this with versioned named container annotations for optimal performance. For production, this works without requiring users to annotate their Function resources.
Types ¶
This section is empty.
Click to show internal directories.
Click to hide internal directories.