How long can a SQL server agent job can run in general? are there any maximum run time limit settings option while creating a job ?
Out of the box, the SQL Server Agent Job will run continuously until it's completed. There is no maximum runtime or timeout option on the Job itself.
If you need a way to enforce a maximum runtime, you can use a second Job that monitors for the runtime of your first job, and calls
sp_stop_job against it, to instruct the Agent to stop that Job. Depending on the process that is being executed this may stop the Job immediately or it may need to wait for the process to reach a stable point before it can actually stop the Job.