When I create new request, it been assigned with default workflow. If I create a request from a request step, the new request will get the parent request workflow. I also think that non of the on creation rules being fired.
I am using ppm 7.1.0 SP8. Nothing have change in the system for a long time but it started acting funny a week ago.
1. You have one or more rules with the flag process subsequent rules to No.
2. If you have no rules like #1 then one or more of your rules are failing. I would suggest if possible to disable the rules and only turn on a few at a time and run a test to see which one/s are failing once you know which one it is then fix that one and you should be fine.
When you are creating a request from within a workflow, it is probably utilizing the copy functionality, so that your data will transfer over. In these scenarios, the On Create trigger do not fire. Newer versions of PPM offer an On Copy trigger so that you can fire Rules in such a scenario.
However, if you are using the ksc_copy_request command, you can override the request type and workflow that is assigned to the Request when it gets "copied" so that you can control the workflow used that way.
In either case, I would still highly recommned trying to pursue an upgrade to the latest verison of PPM. Your version has gone out of support and there are many new features available in the new versions.