csthomas1 opened a new issue #9946:
URL: https://github.com/apache/pulsar/issues/9946


   **Describe the bug**
   I'm able to successfully deploy in Pulsar a Pulsar function that includes a 
':' as part of its function name.  When I later try to delete the function 
deployment, the Pulsar broker ends up crashing with an IllegalArgumentException 
in its log stating "Invalid format for fully qualified instance name: 
<fqfn>:<instanceid>".
   
   The bug can be found in  the class 
org.apache.pulsar.function.utils.FunctionInstanceId within the 
pulsar-function-utils library -- it relies on a ':' as a delimiter to separate 
the function name from the instance id, and in so doing assumes that there can 
only be at  most one ':' in the function name.
   
   This has been observed on both Pulsar 2.6.0 and Pulsar 2.7.0.
   
   **To Reproduce**
   Steps to reproduce the behavior:
   
   1. Use pulsar-admin to deploy a function. Specify a function name that 
includes a ':'. Example:
   ```
   pa functions create --fqfn platform/passthrough2/test:input:filter -i 
persistent://public/default/input -o persistent://public/default/output --jar 
/tmp/test-functions-1.0.0-SNAPSHOT.jar --classname 
messaging.pulsar.functions.PassThroughFilter
   ```
   
   2. Wait until the function is running, then try to delete the function. 
Example:
   ```
   pa functions delete --fqfn platform/passthrough2/test:input:filter
   ```
   
   3. Check the status of whichever broker received the request to remove the 
function instance. You should see evidence of a crash. In the logs you'll see 
the following message:
   ```
   java.lang.IllegalArgumentException: Invalid format for fully qualified 
instance name: platform/passthrough2/test:input:filter
   ```
   **Expected behavior**
   
   Since pulsar accepts a function name that includes ':' during creation, it 
should support it during deletion as well.
   
   **Additional context**
   Pull request incoming...
   


----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
[email protected]


Reply via email to